Plugin info

Total downloads: 292,784
Active installs: 6,000
Total reviews: 32
Average rating: 4.3
Support threads opened: 0
Support threads resolved: 0 (0%)
Available in: 1 language(s)
Contributors: 2
Last updated: 11/28/2017 (2955 days ago)
Added to WordPress: 7/31/2009 (16 years old)
Minimum WordPress version: 3.0
Tested up to WordPress version: 4.6.30
Minimum PHP version: f

Maintenance & Compatibility

Maintenance score

Possibly abandoned • Last updated 2955 days ago • 32 reviews

26/100

Is HTML Import 2 abandoned?

Possibly abandoned (last update 2955 days ago).

Compatibility

Requires WordPress: 3.0
Tested up to: 4.6.30
Requires PHP: f

Similar & Alternatives

Explore plugins with similar tags, and compare key metrics like downloads, ratings, updates, support, and WP/PHP compatibility.

No similar plugins found yet.

Description

Imports well-formed static HTML files into WordPress. Requires PHP 5.

This plugin will import a directory of files as either pages or posts. You may specify the HTML tag (e.g. ,

, or ) or Dreamweaver template region (e.g. ‘Main Content’) containing the content you want to import.

If importing pages, the directory hierarchy will be preserved. Directories containing the specified file types will be imported as empty parent pages (or, if an index file is present, its contents will be used for the parent page). Directories that do not contain the specified file types will be ignored.

As files are imported, the resulting IDs, permalinks, and titles will be displayed. On completion, the importer will provide a list of Apache redirects that can be used in your .htaccess file to seamlessly transfer visitors from the old file locations to the new WordPress permalinks. As of 2.0, if you change your permalink structure after you’ve imported your files, you can regenerate the redirects—the file’s old URL is stored as a custom field in the imported post.

Options:

  • import files into any post type (posts, pages, or custom post types set to public)
  • import linked media files (images, documents, etc.) to the media library
  • select content, title, and custom fields by HTML tag or Dreamweaver template region
  • remove a common phrase (such as the site name) from imported titles
  • remove the imported title from within the content area
  • upload a single file or scan a directory for files to import
  • specify file extensions to import (e.g. html, htm, php)
  • specify directories to exclude (e.g. images, css)
  • if importing pages (or any hierarchical post type), specify whether your top-level files should become top-level pages or children of an existing page
  • specify index file names (e.g. index.html, default.htm) whose contents should be used for the directory parent pages
  • set tags, categories, and custom taxonomies
  • choose status, author, and timestamp
  • use meta descriptions as excerpts
  • clean up imported HTML and strip unwanted tags and attributes in content and custom fields
  • fix internal links in imported files to match new permalinks
  • import the entire file and generate the title from the filename
  • preserve the original filename as the imported page’s slug
  • choose the date from an HTML tag or Dreamweaver region (uses strtotime(); results may vary)
  • import additional HTML tags or Dreamweaver regions as custom fields
  • option to remove imported title from within content area
  • fallbacks: if your chosen tag/area is empty or does not exist, the importer will select for content and </code> for the title</li> <li>use a custom field named ‘post_tag’ to import tags from a portion of the file</li> </ul> <p>See the <a href="http://stephanieleary.com/code/wordpress/html-import/html-import-2-user-guide/" rel="nofollow ugc">User Guide</a> for details on all the options.</p> <h4>Thanks</h4> <p>Thanks to…</p> <ul> <li>Tom Dyson’s <a href="http://wordoff.org/" rel="nofollow ugc">Wordoff.org</a> for inspiring the Word cleanup option in 1.1. </li> <li>Dion Hulse’s <a href="https://wordpress.org/extend/plugins/add-from-server/" rel="ugc">Add from Server</a> plugin and bbqiguana’s <a href="https://wordpress.org/extend/plugins/add-linked-images-to-gallery-v01/" rel="ugc">Add Linked Images To Gallery</a> plugin, from which I borrowed a lot of the logic behind the image import feature in 2.0</li> </ul> </div></div></div></div></section><section id="installation" class="scroll-mt-24"><div class="overflow-hidden rounded-2xl border border-gray-200 bg-white/80 shadow-sm backdrop-blur dark:border-gray-700 dark:bg-gray-900/40"><div class="flex items-center justify-between gap-3 border-b border-gray-200 px-4 py-4 dark:border-gray-700 md:px-6"><div class="flex items-center gap-3"><div class="flex h-9 w-9 items-center justify-center rounded-xl bg-indigo-50 text-indigo-700 dark:bg-indigo-900/40 dark:text-indigo-200"><svg stroke="currentColor" fill="none" stroke-width="0" viewBox="0 0 24 24" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M5 16C5 15.4477 5.44772 15 6 15H14C14.5523 15 15 15.4477 15 16C15 16.5523 14.5523 17 14 17H6C5.44772 17 5 16.5523 5 16Z" fill="currentColor"></path><path d="M18 11C18.5523 11 19 11.4477 19 12C19 12.5523 18.5523 13 18 13H10C9.44772 13 9 12.5523 9 12C9 11.4477 9.44772 11 10 11H18Z" fill="currentColor"></path><path d="M16 16C16 15.4477 16.4477 15 17 15H18C18.5523 15 19 15.4477 19 16C19 16.5523 18.5523 17 18 17H17C16.4477 17 16 16.5523 16 16Z" fill="currentColor"></path><path d="M7 11C7.55228 11 8 11.4477 8 12C8 12.5523 7.55228 13 7 13H6C5.44772 13 5 12.5523 5 12C5 11.4477 5.44772 11 6 11H7Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M4 3C2.34315 3 1 4.34315 1 6V18C1 19.6569 2.34315 21 4 21H20C21.6569 21 23 19.6569 23 18V6C23 4.34315 21.6569 3 20 3H4ZM20 5H4C3.44772 5 3 5.44772 3 6V18C3 18.5523 3.44772 19 4 19H20C20.5523 19 21 18.5523 21 18V6C21 5.44771 20.5523 5 20 5Z" fill="currentColor"></path></svg></div><h2 class="text-base font-semibold text-gray-900 dark:text-gray-100 md:text-lg">Installation</h2></div></div><div class="relative px-4 py-4 md:px-6"><div class="relative overflow-hidden prose prose-sm sm:prose md:prose-lg dark:prose-invert" style="max-width:100%;max-height:320px"><div><ol> <li>Unzip the files and upload the plugin directory to <code>/wp-content/plugins/</code> </li> <li>Activate the plugin through the ‘Plugins’ menu in WordPress</li> <li>Go to Settings → HTML Import to begin. You must save the settings before proceeding to Tools → Import → HTML.</li> </ol> </div></div></div></div></section><section id="faq" class="scroll-mt-24"><div class="overflow-hidden rounded-2xl border border-gray-200 bg-white/80 shadow-sm backdrop-blur dark:border-gray-700 dark:bg-gray-900/40"><div class="flex items-center justify-between gap-3 border-b border-gray-200 px-4 py-4 dark:border-gray-700 md:px-6"><div class="flex items-center gap-3"><div class="flex h-9 w-9 items-center justify-center rounded-xl bg-indigo-50 text-indigo-700 dark:bg-indigo-900/40 dark:text-indigo-200"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 384 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M202.021 0C122.202 0 70.503 32.703 29.914 91.026c-7.363 10.58-5.093 25.086 5.178 32.874l43.138 32.709c10.373 7.865 25.132 6.026 33.253-4.148 25.049-31.381 43.63-49.449 82.757-49.449 30.764 0 68.816 19.799 68.816 49.631 0 22.552-18.617 34.134-48.993 51.164-35.423 19.86-82.299 44.576-82.299 106.405V320c0 13.255 10.745 24 24 24h72.471c13.255 0 24-10.745 24-24v-5.773c0-42.86 125.268-44.645 125.268-160.627C377.504 66.256 286.902 0 202.021 0zM192 373.459c-38.196 0-69.271 31.075-69.271 69.271 0 38.195 31.075 69.27 69.271 69.27s69.271-31.075 69.271-69.271-31.075-69.27-69.271-69.27z"></path></svg></div><h2 class="text-base font-semibold text-gray-900 dark:text-gray-100 md:text-lg">Frequently Asked Questions</h2></div></div><div class="relative px-4 py-4 md:px-6"><div class="relative overflow-hidden prose prose-sm sm:prose md:prose-lg dark:prose-invert" style="max-width:100%;max-height:320px"><div> <h4>Installation Instructions</h4> <p> <ol> <li>Unzip the files and upload the plugin directory to <code>/wp-content/plugins/</code> </li> <li>Activate the plugin through the ‘Plugins’ menu in WordPress</li> <li>Go to Settings → HTML Import to begin. You must save the settings before proceeding to Tools → Import → HTML.</li> </ol> </p> <h4>My title imported, but the content was empty! (Or vice versa.)</h4> <p> <p>You didn’t find the right HTML tag that surrounds the content you wanted to import. Open up one of your old files in a browser and use its inspector (or Firebug) to select the content you want. Look for the tag that surrounds that content and find something unique about it. (An ID attribute is best, but anything <em>unique</em> will work. If it’s a table cell, a unique width will do just fine.) The enter the tag name, the attribute name, and the attribute’s value into the separate boxes in the Content section of the importer’s options page.</p> <p>See the <a href="http://stephanieleary.com/code/wordpress/html-import/html-import-2-user-guide/" rel="nofollow ugc">User Guide</a> for details and examples.</p> </p> <h4>Does this work on Windows servers?</h4> <p> <p>Yes! Let me know if you encounter any problems.</p> </p> <h4>Will the importer duplicate the design of my old site?</h4> <p> <p>No. The importer simply extracts the relevant part of each HTML file and copies it into a WordPress post. You’ll need to <a href="https://codex.wordpress.org/Theme_Development" rel="nofollow ugc">create a custom theme</a> if you want to preserve the site’s appearance as well as its content.</p> </p> <h4>Will this work on large numbers of HTML files?</h4> <p> <p>Yes, it has been used to import over a thousand pages, and did so in a couple of minutes. However, you might need to adjust PHP’s <code>max_execution_time</code> setting as described below.</p> </p> <h4>I import a few files and then the script times out. What can I do?</h4> <p> <p>The importer will attempt to work around your server’s <code>max_execution_time</code> setting for PHP (usually 30 seconds), but some servers don’t allow this. You can try to increase it by adding a line to your <code>.htaccess</code> file:</p> <pre><code>php_value max_execution_time 160 </code></pre> <p>If that gets you further but still doesn’t finish, just increase the number (it’s in seconds). However, note that your host might get irritated with you for hogging the server’s resources. If you have a <em>lot</em> of files to import, it’s best to install WordPress on your desktop (XAMPP for Windows and MAMP for Macs make it pretty easy) and run the importer there instead of doing it on your live server.</p> <p>It’s also quite possible that the script is trying to use more memory than your server allows. You can try to change that setting, too, in <code>.htaccess</code>:</p> <pre><code>php_value memory_limit 1024M </code></pre> </p> <h4>Should I remove ‘images’ from the list of skipped directories if I want to import images?</h4> <p> <p>The skipped directory setting just tells the importer where to look for HTML files. Linked images will be imported no matter where they’re located.</p> </p> <h4>Can I import files from another server?</h4> <p> <p>No. The files must be on the same server as your WordPress installation. I have no intention of ever making this plugin import files from URLs. You are welcome to fork the code if you want to add this feature.</p> </p> </div></div></div></div></section><section id="reviews-list" class="scroll-mt-24"><div class="overflow-hidden rounded-2xl border border-gray-200 bg-white/80 shadow-sm backdrop-blur dark:border-gray-700 dark:bg-gray-900/40"><div class="flex items-center justify-between gap-3 border-b border-gray-200 px-4 py-4 dark:border-gray-700 md:px-6"><div class="flex items-center gap-3"><div class="flex h-9 w-9 items-center justify-center rounded-xl bg-indigo-50 text-indigo-700 dark:bg-indigo-900/40 dark:text-indigo-200"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 24 24" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0V0z"></path><path d="M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H5.17l-.59.59-.58.58V4h16v12zm-9.5-2H18v-2h-5.5zm3.86-5.87c.2-.2.2-.51 0-.71l-1.77-1.77c-.2-.2-.51-.2-.71 0L6 11.53V14h2.47l5.89-5.87z"></path></svg></div><h2 class="text-base font-semibold text-gray-900 dark:text-gray-100 md:text-lg">Review feed</h2></div></div><div class="relative px-4 py-4 md:px-6"><div class="relative overflow-hidden" style="max-height:520px"><div class="text-center text-gray-500 dark:text-gray-400">No reviews available</div></div></div></div></section><section id="screenshots" class="scroll-mt-24"><div class="overflow-hidden rounded-2xl border border-gray-200 bg-white/80 shadow-sm backdrop-blur dark:border-gray-700 dark:bg-gray-900/40"><div class="flex items-center justify-between gap-3 border-b border-gray-200 px-4 py-4 dark:border-gray-700 md:px-6"><div class="flex items-center gap-3"><div class="flex h-9 w-9 items-center justify-center rounded-xl bg-indigo-50 text-indigo-700 dark:bg-indigo-900/40 dark:text-indigo-200"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 576 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M480 416v16c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V176c0-26.51 21.49-48 48-48h16v208c0 44.112 35.888 80 80 80h336zm96-80V80c0-26.51-21.49-48-48-48H144c-26.51 0-48 21.49-48 48v256c0 26.51 21.49 48 48 48h384c26.51 0 48-21.49 48-48zM256 128c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm-96 144l55.515-55.515c4.686-4.686 12.284-4.686 16.971 0L272 256l135.515-135.515c4.686-4.686 12.284-4.686 16.971 0L512 208v112H160v-48z"></path></svg></div><h2 class="text-base font-semibold text-gray-900 dark:text-gray-100 md:text-lg">Screenshots</h2></div></div><div class="relative px-4 py-4 md:px-6"><div class="relative overflow-hidden prose prose-sm sm:prose md:prose-lg dark:prose-invert" style="max-width:100%;max-height:520px"><div><ol><li><a href="https://ps.w.org/import-html-pages/assets/screenshot-1.png?rev=1085315"><img src="https://ps.w.org/import-html-pages/assets/screenshot-1.png?rev=1085315" alt="Settings for files to import" loading="lazy" decoding="async" fetchpriority="low"></a><p>Settings for files to import</p></li><li><a href="https://ps.w.org/import-html-pages/assets/screenshot-2.png?rev=1085315"><img src="https://ps.w.org/import-html-pages/assets/screenshot-2.png?rev=1085315" alt="Content settings" loading="lazy" decoding="async" fetchpriority="low"></a><p>Content settings</p></li><li><a href="https://ps.w.org/import-html-pages/assets/screenshot-3.png?rev=1085315"><img src="https://ps.w.org/import-html-pages/assets/screenshot-3.png?rev=1085315" alt="HTML cleanup options" loading="lazy" decoding="async" fetchpriority="low"></a><p>HTML cleanup options</p></li><li><a href="https://ps.w.org/import-html-pages/assets/screenshot-4.png?rev=1085315"><img src="https://ps.w.org/import-html-pages/assets/screenshot-4.png?rev=1085315" alt="Title and metadata settings" loading="lazy" decoding="async" fetchpriority="low"></a><p>Title and metadata settings</p></li><li><a href="https://ps.w.org/import-html-pages/assets/screenshot-5.png?rev=1085315"><img src="https://ps.w.org/import-html-pages/assets/screenshot-5.png?rev=1085315" alt="Alternative title specifications" loading="lazy" decoding="async" fetchpriority="low"></a><p>Alternative title specifications</p></li><li><a href="https://ps.w.org/import-html-pages/assets/screenshot-6.png?rev=1085315"><img src="https://ps.w.org/import-html-pages/assets/screenshot-6.png?rev=1085315" alt="Custom field settings" loading="lazy" decoding="async" fetchpriority="low"></a><p>Custom field settings</p></li><li><a href="https://ps.w.org/import-html-pages/assets/screenshot-7.png?rev=1085315"><img src="https://ps.w.org/import-html-pages/assets/screenshot-7.png?rev=1085315" alt="Category, tag, and taxonomy settings" loading="lazy" decoding="async" fetchpriority="low"></a><p>Category, tag, and taxonomy settings</p></li><li><a href="https://ps.w.org/import-html-pages/assets/screenshot-8.png?rev=1085315"><img src="https://ps.w.org/import-html-pages/assets/screenshot-8.png?rev=1085315" alt="Import screen (directory/file selection)" loading="lazy" decoding="async" fetchpriority="low"></a><p>Import screen (directory/file selection)</p></li><li><a href="https://ps.w.org/import-html-pages/assets/screenshot-9.png?rev=1085315"><img src="https://ps.w.org/import-html-pages/assets/screenshot-9.png?rev=1085315" alt="Completed import: pages, rewrite rules, and images" loading="lazy" decoding="async" fetchpriority="low"></a><p>Completed import: pages, rewrite rules, and images</p></li><li><a href="https://ps.w.org/import-html-pages/assets/screenshot-10.png?rev=1085327"><img src="https://ps.w.org/import-html-pages/assets/screenshot-10.png?rev=1085327" alt="Sample directory and file structure" loading="lazy" decoding="async" fetchpriority="low"></a><p>Sample directory and file structure</p></li><li><a href="https://ps.w.org/import-html-pages/assets/screenshot-11.png?rev=1085327"><img src="https://ps.w.org/import-html-pages/assets/screenshot-11.png?rev=1085327" alt="The same site, after the import (directory hierarchy preserved as parent/child pages)" loading="lazy" decoding="async" fetchpriority="low"></a><p>The same site, after the import (directory hierarchy preserved as parent/child pages)</p></li></ol></div></div></div></div></section><section id="changelog" class="scroll-mt-24"><div class="overflow-hidden rounded-2xl border border-gray-200 bg-white/80 shadow-sm backdrop-blur dark:border-gray-700 dark:bg-gray-900/40"><div class="flex items-center justify-between gap-3 border-b border-gray-200 px-4 py-4 dark:border-gray-700 md:px-6"><div class="flex items-center gap-3"><div class="flex h-9 w-9 items-center justify-center rounded-xl bg-indigo-50 text-indigo-700 dark:bg-indigo-900/40 dark:text-indigo-200"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 512 512" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M504 255.531c.253 136.64-111.18 248.372-247.82 248.468-59.015.042-113.223-20.53-155.822-54.911-11.077-8.94-11.905-25.541-1.839-35.607l11.267-11.267c8.609-8.609 22.353-9.551 31.891-1.984C173.062 425.135 212.781 440 256 440c101.705 0 184-82.311 184-184 0-101.705-82.311-184-184-184-48.814 0-93.149 18.969-126.068 49.932l50.754 50.754c10.08 10.08 2.941 27.314-11.313 27.314H24c-8.837 0-16-7.163-16-16V38.627c0-14.254 17.234-21.393 27.314-11.314l49.372 49.372C129.209 34.136 189.552 8 256 8c136.81 0 247.747 110.78 248 247.531zm-180.912 78.784l9.823-12.63c8.138-10.463 6.253-25.542-4.21-33.679L288 256.349V152c0-13.255-10.745-24-24-24h-16c-13.255 0-24 10.745-24 24v135.651l65.409 50.874c10.463 8.137 25.541 6.253 33.679-4.21z"></path></svg></div><h2 class="text-base font-semibold text-gray-900 dark:text-gray-100 md:text-lg">Changelog</h2></div></div><div class="relative px-4 py-4 md:px-6"><div class="relative overflow-hidden prose prose-sm sm:prose md:prose-lg dark:prose-invert" style="max-width:100%;max-height:320px"><div><h4>2.6</h4> <ul> <li>Removed ancient magic runtime quotes call, wow.</li> <li>Checking for empty string instead of empty() to allow for directories named ‘0’ or similar</li> <li>Bail out earlier if XML can’t be loaded, to avoid fatal errors</li> <li>More efficient link rewriting</li> </ul> <h4>2.5.1</h4> <ul> <li>Fixed warnings and notices related to the custom category walker.</li> <li>Fixed bug where the page parent option displayed incorrectly in sites with no published pages.</li> </ul> <h4>2.5</h4> <ul> <li>Custom fields can now allow the same HTML tags as content</li> <li>Fixed a problem with some image paths</li> <li>Made image and link searches case-insensitive (props <a href="https://profiles.wordpress.org/noamcleanforestsolutionscom/" rel="nofollow ugc">Clean Forest Solutions</a>)</li> <li>Fixed some incorrectly escaped options that would trigger translations on things that shouldn’t be translated</li> <li>Page template selections are now pre-selected when returning to the options page (props <a href="https://profiles.wordpress.org/lee-fent/" rel="nofollow ugc">Lee Fent</a>)</li> </ul> <h4>2.4</h4> <ul> <li>You can now specify more than one index filename (e.g. ‘index.php, default.htm’)</li> <li>New option to remove the imported title from within the content area</li> <li>Fallbacks: if your chosen tag/area is empty or does not exist, the importer will select <code><body></code> for content and <code><title></code> for the title. As a last resort, if there is no title, the original file name will become the title.</li> <li>You can now use a custom field named ‘post_tag’ to import tags from a portion of the file</li> <li>UI fixes for the custom fields tab</li> <li>Bug fix: the importer now correctly recognizes absolute links to images</li> </ul> <h4>2.3</h4> <ul> <li>New option to import an entire file’s contents instead of selecting a portion of it. (Props Shawn Zilbert.)</li> <li>New option to generate the title from the filename. (Props Shawn Zilbert.)</li> <li>New option to preserve the original filename (minus the extension) as the imported page slug. (Sponsored by <a href="http://www.nycinsiderguide.com" rel="nofollow ugc">NYCinsiderguide.com</a>)</li> <li>New option to choose the date from an HTML tag or Dreamweaver region.</li> <li>New option to import custom fields.</li> <li>UI cleanup. The tabs should work a bit better.</li> <li>“asXML() on a non-object” errors should be less frequent now.</li> <li>Fixed a problem with file types that would cause blank thumbnails and images. (Props <a href="https://wordpress.org/support/topic/plugin-html-import-2-importing-images-to-media-fix?replies=3" rel="ugc">mchev2 and Carsten Bach</a>.)</li> </ul> <h4>2.2</h4> <ul> <li>Now imports media files other than images. Uses <code>rawurldecode()</code> to remove junk like <code>%20</code> from file names, and thus should now handle situations where your link is something like <code>my%20file.doc</code> and your file is actually called <code>my file.doc</code>. </li> <li>Now handles images with https srcs.</li> <li>Removed a pointless security check that was preventing people from uploading valid image files.</li> </ul> <h4>2.1</h4> <ul> <li>New option to fix internal links. Also, the importer now bakes you cookies. (Kidding about the cookies.) (August 23, 2011)</li> </ul> <h4>2.0.2</h4> <ul> <li>Added some helpers to work around servers that do not support PHP’s multibyte string functions. (August 12, 2011)</li> </ul> <h4>2.0.1</h4> <ul> <li>Added option to set the page template for hierarchical post types. (August 2, 2011)</li> </ul> <h4>2.0</h4> <ul> <li>New option to import images linked in the imported HTML files. It can handle most relative paths as well as absolute URLs. The report includes a list of the image paths that couldn’t be found.</li> <li>Now supports all public custom post types and taxonomies (including hierarchical ones).</li> <li>Completely different, much better handling of special characters.</li> <li>The import screen now lets you upload a single file.</li> <li>New user interface. The options form is now broken up into several tabbed sections. Categories and other hierarchical taxonomies are selected with checkboxes.</li> <li>The options form is now separate from the importer. It will now check your settings before the importer runs — for example, you’ll get a warning if your beginning directory isn’t readable.</li> <li>The importer itself is now based on the WordPress import class, which means it looks and works more like other importers. It is located under Tools→Import (but you should visit the settings screen first).</li> <li>Files’ old URLs are now stored as custom fields in the imported posts. There’s now an option to regenerate the redirects for your imported files, which is handy if you changed your permalink structure after you finished importing.</li> <li>When importing directories as hierarchical post types (like pages), the importer now uses the default directory file (like index.html) for the parent page’s contents.</li> <li>Now skips Dreamweaver <code>_notes</code> and Frontpage <code>_vti_cnf</code> directories automatically.</li> <li>Now makes proper use of the Settings API for better security and data validation.</li> <li>Help screen and <a href="http://sillybean.net/code/wordpress/html-import-2/user-guide/" rel="nofollow ugc">user guide</a>.</li> <li>Now requires at least WP 3.0. (July 15, 2011)</li> </ul> <h4>1.30</h4> <ul> <li>The ‘.,..’ directories are no longer optional, so you can’t accidentally import hundreds of empty posts/pages by removing these from the skipped directories option.</li> <li>The beginning directory default is now based on the path to your WordPress installation. There’s also a hint shown below the field. This should help people locate their import directory correctly.</li> <li>There’s now an option to enter your old URL. If you enter it, your .htaccess redirects should work as displayed. If you leave it blank, you’ll have to doctor the paths afterward, as before.</li> <li>Character encoding is now optional. If your special characters did not import correctly before, try again with this option unchecked (which is now the default).</li> <li>Options are now deleted on plugin uninstall instead of deactivate. (Sorry about that.)</li> <li>Code cleanup in preparation for version 2.0. (June 24, 2011)</li> </ul> <h4>1.21</h4> <ul> <li>same as 1.2; not sure why the plugin repository can’t count</li> </ul> <h4>1.2</h4> <ul> <li>Added custom taxonomy options</li> <li>Better handling of mb encoding function and asXML</li> <li>Better security checking</li> <li>Added translation support (January 24, 2010)</li> </ul> <h4>1.13</h4> <ul> <li>Fixed a bug in 1.11 when importing content specified by a tag (thanks, mjos)</li> <li>Added an option to assign a category or tag to all imported posts</li> <li>This is 1.12, only uncorrupted (September 13, 2009)</li> </ul> <h4>1.12</h4> <ul> <li>Fixed a bug in 1.11 when importing content specified by a tag (thanks, mjos)</li> <li>Added an option to assign a category or tag to all imported posts (September 13, 2009)</li> </ul> <h4>1.11</h4> <ul> <li>Left some debugging code in 1.1, oops! (August 15, 2009)</li> </ul> <h4>1.1</h4> <ul> <li>Added Word cleanup option (August 14, 2009)</li> </ul> <h4>1.04</h4> <ul> <li>Better user capability check (August 3, 2009)</li> </ul> <h4>1.03</h4> <ul> <li>Still better error handling</li> <li>minor code cleanup (August 1, 2009)</li> </ul> <h4>1.02</h4> <ul> <li>Better error handling for <code>fopen</code> and <code>file_get_contents</code> (July 31, 2009)</li> </ul> <h4>1.01</h4> <ul> <li>jQuery bug fixed</li> <li>better Windows compatibility (July 31, 2009)</li> </ul> <h4>1.0</h4> <ul> <li>First release (July 26, 2009)</li> </ul> </div></div></div></div></section><div class="flex justify-center pt-2"><a class="inline-flex items-center gap-2 text-sm font-semibold text-indigo-600 hover:underline dark:text-indigo-300" href="/plugins"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" class="h-4 w-4" aria-hidden="true" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M257.5 445.1l-22.2 22.2c-9.4 9.4-24.6 9.4-33.9 0L7 273c-9.4-9.4-9.4-24.6 0-33.9L201.4 44.7c9.4-9.4 24.6-9.4 33.9 0l22.2 22.2c9.5 9.5 9.3 25-.4 34.3L136.6 216H424c13.3 0 24 10.7 24 24v32c0 13.3-10.7 24-24 24H136.6l120.5 114.8c9.8 9.3 10 24.8.4 34.3z"></path></svg> Back to plugins</a></div></div></div></div></div></main><footer class="w-full border-t border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900 flex-none"><div class="max-w-6xl mx-auto px-4 py-10 grid gap-10 md:grid-cols-3"><div class="flex flex-col gap-3"><div class="text-lg font-semibold">Plugins Database</div><p class="text-sm text-gray-600 dark:text-gray-400 leading-relaxed">Data-rich search and discovery for every WordPress plugin, tag, language, and author.</p></div><div class="flex flex-col gap-3"><div class="text-xs font-semibold uppercase tracking-wide text-gray-700 dark:text-gray-300">Explore</div><div class="flex flex-col gap-2 text-sm"><a href="/plugins">All plugins</a><a href="/tags">Tags</a><a href="/languages">Languages</a><a href="/authors">Authors</a></div></div><div class="flex flex-col gap-3"><div class="text-xs font-semibold uppercase tracking-wide text-gray-700 dark:text-gray-300">Company</div><div class="flex flex-col gap-2 text-sm"><a href="/about">About</a></div></div></div><div class="border-t border-gray-200 dark:border-gray-700"><div class="max-w-6xl mx-auto px-4 py-4 text-sm text-gray-600 dark:text-gray-400 flex flex-col sm:flex-row sm:items-center sm:justify-between gap-2"><div>© <!-- -->2026<!-- --> Plugins Database LTD</div><div class="flex flex-row flex-wrap gap-4"><a href="/sitemaps/all-plugins-sitemaps.xml">Sitemap</a></div></div></div></footer></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"pluginName":"HTML Import 2","pluginId":"import-html-pages","stringifyPluginData":"{\"active_installs\":6000,\"added\":{\"timestamp\":1248998400,\"timezone\":\"UTC\"},\"author\":\"Stephanie Leary\",\"author_profile\":{\"url\":\"https://profiles.wordpress.org/sillybean/\",\"alt\":\"Stephanie Leary\"},\"banners\":[],\"changelog\":\"\u003ch4\u003e2.6\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eRemoved ancient magic runtime quotes call, wow.\u003c/li\u003e\\n\u003cli\u003eChecking for empty string instead of empty() to allow for directories named \u0026#8216;0\u0026#8217; or similar\u003c/li\u003e\\n\u003cli\u003eBail out earlier if XML can\u0026#8217;t be loaded, to avoid fatal errors\u003c/li\u003e\\n\u003cli\u003eMore efficient link rewriting\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e2.5.1\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eFixed warnings and notices related to the custom category walker.\u003c/li\u003e\\n\u003cli\u003eFixed bug where the page parent option displayed incorrectly in sites with no published pages.\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e2.5\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eCustom fields can now allow the same HTML tags as content\u003c/li\u003e\\n\u003cli\u003eFixed a problem with some image paths\u003c/li\u003e\\n\u003cli\u003eMade image and link searches case-insensitive (props \u003ca href=\\\"https://profiles.wordpress.org/noamcleanforestsolutionscom/\\\" rel=\\\"nofollow ugc\\\"\u003eClean Forest Solutions\u003c/a\u003e)\u003c/li\u003e\\n\u003cli\u003eFixed some incorrectly escaped options that would trigger translations on things that shouldn\u0026#8217;t be translated\u003c/li\u003e\\n\u003cli\u003ePage template selections are now pre-selected when returning to the options page (props \u003ca href=\\\"https://profiles.wordpress.org/lee-fent/\\\" rel=\\\"nofollow ugc\\\"\u003eLee Fent\u003c/a\u003e)\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e2.4\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eYou can now specify more than one index filename (e.g. \u0026#8216;index.php, default.htm\u0026#8217;)\u003c/li\u003e\\n\u003cli\u003eNew option to remove the imported title from within the content area\u003c/li\u003e\\n\u003cli\u003eFallbacks: if your chosen tag/area is empty or does not exist, the importer will select \u003ccode\u003e\u0026lt;body\u0026gt;\u003c/code\u003e for content and \u003ccode\u003e\u0026lt;title\u0026gt;\u003c/code\u003e for the title. As a last resort, if there is no title, the original file name will become the title.\u003c/li\u003e\\n\u003cli\u003eYou can now use a custom field named \u0026#8216;post_tag\u0026#8217; to import tags from a portion of the file\u003c/li\u003e\\n\u003cli\u003eUI fixes for the custom fields tab\u003c/li\u003e\\n\u003cli\u003eBug fix: the importer now correctly recognizes absolute links to images\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e2.3\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eNew option to import an entire file\u0026#8217;s contents instead of selecting a portion of it. (Props Shawn Zilbert.)\u003c/li\u003e\\n\u003cli\u003eNew option to generate the title from the filename. (Props Shawn Zilbert.)\u003c/li\u003e\\n\u003cli\u003eNew option to preserve the original filename (minus the extension) as the imported page slug. (Sponsored by \u003ca href=\\\"http://www.nycinsiderguide.com\\\" rel=\\\"nofollow ugc\\\"\u003eNYCinsiderguide.com\u003c/a\u003e)\u003c/li\u003e\\n\u003cli\u003eNew option to choose the date from an HTML tag or Dreamweaver region.\u003c/li\u003e\\n\u003cli\u003eNew option to import custom fields.\u003c/li\u003e\\n\u003cli\u003eUI cleanup. The tabs should work a bit better.\u003c/li\u003e\\n\u003cli\u003e\u0026#8220;asXML() on a non-object\u0026#8221; errors should be less frequent now.\u003c/li\u003e\\n\u003cli\u003eFixed a problem with file types that would cause blank thumbnails and images. (Props \u003ca href=\\\"https://wordpress.org/support/topic/plugin-html-import-2-importing-images-to-media-fix?replies=3\\\" rel=\\\"ugc\\\"\u003emchev2 and Carsten Bach\u003c/a\u003e.)\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e2.2\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eNow imports media files other than images. Uses \u003ccode\u003erawurldecode()\u003c/code\u003e to remove junk like \u003ccode\u003e%20\u003c/code\u003e from file names, and thus should now handle situations where your link is something like \u003ccode\u003emy%20file.doc\u003c/code\u003e and your file is actually called \u003ccode\u003emy file.doc\u003c/code\u003e. \u003c/li\u003e\\n\u003cli\u003eNow handles images with https srcs.\u003c/li\u003e\\n\u003cli\u003eRemoved a pointless security check that was preventing people from uploading valid image files.\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e2.1\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eNew option to fix internal links. Also, the importer now bakes you cookies. (Kidding about the cookies.) (August 23, 2011)\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e2.0.2\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eAdded some helpers to work around servers that do not support PHP\u0026#8217;s multibyte string functions. (August 12, 2011)\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e2.0.1\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eAdded option to set the page template for hierarchical post types. (August 2, 2011)\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e2.0\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eNew option to import images linked in the imported HTML files. It can handle most relative paths as well as absolute URLs. The report includes a list of the image paths that couldn\u0026#8217;t be found.\u003c/li\u003e\\n\u003cli\u003eNow supports all public custom post types and taxonomies (including hierarchical ones).\u003c/li\u003e\\n\u003cli\u003eCompletely different, much better handling of special characters.\u003c/li\u003e\\n\u003cli\u003eThe import screen now lets you upload a single file.\u003c/li\u003e\\n\u003cli\u003eNew user interface. The options form is now broken up into several tabbed sections. Categories and other hierarchical taxonomies are selected with checkboxes.\u003c/li\u003e\\n\u003cli\u003eThe options form is now separate from the importer. It will now check your settings before the importer runs \u0026#8212; for example, you\u0026#8217;ll get a warning if your beginning directory isn\u0026#8217;t readable.\u003c/li\u003e\\n\u003cli\u003eThe importer itself is now based on the WordPress import class, which means it looks and works more like other importers. It is located under Tools\u0026rarr;Import (but you should visit the settings screen first).\u003c/li\u003e\\n\u003cli\u003eFiles\u0026#8217; old URLs are now stored as custom fields in the imported posts. There\u0026#8217;s now an option to regenerate the redirects for your imported files, which is handy if you changed your permalink structure after you finished importing.\u003c/li\u003e\\n\u003cli\u003eWhen importing directories as hierarchical post types (like pages), the importer now uses the default directory file (like index.html) for the parent page\u0026#8217;s contents.\u003c/li\u003e\\n\u003cli\u003eNow skips Dreamweaver \u003ccode\u003e_notes\u003c/code\u003e and Frontpage \u003ccode\u003e_vti_cnf\u003c/code\u003e directories automatically.\u003c/li\u003e\\n\u003cli\u003eNow makes proper use of the Settings API for better security and data validation.\u003c/li\u003e\\n\u003cli\u003eHelp screen and \u003ca href=\\\"http://sillybean.net/code/wordpress/html-import-2/user-guide/\\\" rel=\\\"nofollow ugc\\\"\u003euser guide\u003c/a\u003e.\u003c/li\u003e\\n\u003cli\u003eNow requires at least WP 3.0. (July 15, 2011)\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e1.30\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eThe \u0026#8216;.,..\u0026#8217; directories are no longer optional, so you can\u0026#8217;t accidentally import hundreds of empty posts/pages by removing these from the skipped directories option.\u003c/li\u003e\\n\u003cli\u003eThe beginning directory default is now based on the path to your WordPress installation. There\u0026#8217;s also a hint shown below the field. This should help people locate their import directory correctly.\u003c/li\u003e\\n\u003cli\u003eThere\u0026#8217;s now an option to enter your old URL. If you enter it, your .htaccess redirects should work as displayed. If you leave it blank, you\u0026#8217;ll have to doctor the paths afterward, as before.\u003c/li\u003e\\n\u003cli\u003eCharacter encoding is now optional. If your special characters did not import correctly before, try again with this option unchecked (which is now the default).\u003c/li\u003e\\n\u003cli\u003eOptions are now deleted on plugin uninstall instead of deactivate. (Sorry about that.)\u003c/li\u003e\\n\u003cli\u003eCode cleanup in preparation for version 2.0. (June 24, 2011)\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e1.21\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003esame as 1.2; not sure why the plugin repository can\u0026#8217;t count\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e1.2\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eAdded custom taxonomy options\u003c/li\u003e\\n\u003cli\u003eBetter handling of mb encoding function and asXML\u003c/li\u003e\\n\u003cli\u003eBetter security checking\u003c/li\u003e\\n\u003cli\u003eAdded translation support (January 24, 2010)\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e1.13\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eFixed a bug in 1.11 when importing content specified by a tag (thanks, mjos)\u003c/li\u003e\\n\u003cli\u003eAdded an option to assign a category or tag to all imported posts\u003c/li\u003e\\n\u003cli\u003eThis is 1.12, only uncorrupted (September 13, 2009)\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e1.12\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eFixed a bug in 1.11 when importing content specified by a tag (thanks, mjos)\u003c/li\u003e\\n\u003cli\u003eAdded an option to assign a category or tag to all imported posts (September 13, 2009)\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e1.11\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eLeft some debugging code in 1.1, oops! (August 15, 2009)\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e1.1\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eAdded Word cleanup option (August 14, 2009)\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e1.04\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eBetter user capability check (August 3, 2009)\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e1.03\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eStill better error handling\u003c/li\u003e\\n\u003cli\u003eminor code cleanup (August 1, 2009)\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e1.02\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eBetter error handling for \u003ccode\u003efopen\u003c/code\u003e and \u003ccode\u003efile_get_contents\u003c/code\u003e (July 31, 2009)\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e1.01\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003ejQuery bug fixed\u003c/li\u003e\\n\u003cli\u003ebetter Windows compatibility (July 31, 2009)\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch4\u003e1.0\u003c/h4\u003e\\n\u003cul\u003e\\n\u003cli\u003eFirst release (July 26, 2009)\u003c/li\u003e\\n\u003c/ul\u003e\\n\",\"contributors\":[{\"slug\":\"sillybean\",\"name\":\"Stephanie Leary\",\"count\":21,\"is_owner\":true,\"links\":{\"profile\":{\"url\":\"https://profiles.wordpress.org/sillybean/\",\"alt\":\"Stephanie Leary's profile\"},\"plugins\":{\"url\":\"https://profiles.wordpress.org/sillybean/#content-plugins\",\"alt\":\"Stephanie Leary's plugins\"},\"activity\":{\"url\":\"https://profiles.wordpress.org/sillybean/#content-activity\",\"alt\":\"Stephanie Leary's activity\"},\"translations\":{\"url\":\"https://profiles.wordpress.org/sillybean/#content-translations\",\"alt\":\"Stephanie Leary's translations\"}}},{\"slug\":\"sillybean\",\"name\":\"Stephanie Leary\",\"count\":1,\"is_owner\":false,\"links\":{\"profile\":{\"url\":\"https://profiles.wordpress.org/sillybean/\",\"alt\":\"Stephanie Leary's profile\"},\"plugins\":{\"url\":\"https://profiles.wordpress.org/sillybean/#content-plugins\",\"alt\":\"Stephanie Leary's plugins\"},\"activity\":{\"url\":\"https://profiles.wordpress.org/sillybean/#content-activity\",\"alt\":\"Stephanie Leary's activity\"},\"translations\":{\"url\":\"https://profiles.wordpress.org/sillybean/#content-translations\",\"alt\":\"Stephanie Leary's translations\"}}}],\"description\":\"\u003cp\u003eImports well-formed static HTML files into WordPress. Requires PHP 5.\u003c/p\u003e\\n\u003cp\u003eThis plugin will import a directory of files as either pages or posts. You may specify the HTML tag (e.g. \u003ccode\u003e\u003cbody\u003e\u003c/code\u003e, \u003ccode\u003e\u003cdiv id=\\\"content\\\"\u003e\u003c/code\u003e, or \u003ccode\u003e\u003ctd width=\\\"732\\\"\u003e\u003c/code\u003e) or Dreamweaver template region (e.g. ‘Main Content’) containing the content you want to import.\u003c/p\u003e\\n\u003cp\u003eIf importing pages, the directory hierarchy will be preserved. Directories containing the specified file types will be imported as empty parent pages (or, if an index file is present, its contents will be used for the parent page). Directories that do not contain the specified file types will be ignored.\u003c/p\u003e\\n\u003cp\u003eAs files are imported, the resulting IDs, permalinks, and titles will be displayed. On completion, the importer will provide a list of Apache redirects that can be used in your \u003ccode\u003e.htaccess\u003c/code\u003e file to seamlessly transfer visitors from the old file locations to the new WordPress permalinks. As of 2.0, if you change your permalink structure after you’ve imported your files, you can regenerate the redirects—the file’s old URL is stored as a custom field in the imported post.\u003c/p\u003e\\n\u003cp\u003eOptions:\u003c/p\u003e\\n\u003cul\u003e\\n\u003cli\u003eimport files into any post type (posts, pages, or custom post types set to \u003ccode\u003epublic\u003c/code\u003e)\u003c/li\u003e\\n\u003cli\u003eimport linked media files (images, documents, etc.) to the media library\u003c/li\u003e\\n\u003cli\u003eselect content, title, and custom fields by HTML tag or Dreamweaver template region\u003c/li\u003e\\n\u003cli\u003eremove a common phrase (such as the site name) from imported titles\u003c/li\u003e\\n\u003cli\u003eremove the imported title from within the content area\u003c/li\u003e\\n\u003cli\u003eupload a single file or scan a directory for files to import\u003c/li\u003e\\n\u003cli\u003especify file extensions to import (e.g. html, htm, php)\u003c/li\u003e\\n\u003cli\u003especify directories to exclude (e.g. images, css)\u003c/li\u003e\\n\u003cli\u003eif importing pages (or any hierarchical post type), specify whether your top-level files should become top-level pages or children of an existing page\u003c/li\u003e\\n\u003cli\u003especify index file names (e.g. index.html, default.htm) whose contents should be used for the directory parent pages \u003c/li\u003e\\n\u003cli\u003eset tags, categories, and custom taxonomies\u003c/li\u003e\\n\u003cli\u003echoose status, author, and timestamp\u003c/li\u003e\\n\u003cli\u003euse meta descriptions as excerpts\u003c/li\u003e\\n\u003cli\u003eclean up imported HTML and strip unwanted tags and attributes in content and custom fields\u003c/li\u003e\\n\u003cli\u003efix internal links in imported files to match new permalinks\u003c/li\u003e\\n\u003cli\u003eimport the entire file and generate the title from the filename \u003c/li\u003e\\n\u003cli\u003epreserve the original filename as the imported page’s slug\u003c/li\u003e\\n\u003cli\u003echoose the date from an HTML tag or Dreamweaver region (uses \u003ca href=\\\"http://php.net/strtotime\\\" rel=\\\"nofollow ugc\\\"\u003estrtotime()\u003c/a\u003e; results may vary)\u003c/li\u003e\\n\u003cli\u003eimport additional HTML tags or Dreamweaver regions as custom fields\u003c/li\u003e\\n\u003cli\u003eoption to remove imported title from within content area\u003c/li\u003e\\n\u003cli\u003efallbacks: if your chosen tag/area is empty or does not exist, the importer will select \u003ccode\u003e\u003cbody\u003e\u003c/code\u003e for content and \u003ccode\u003e\u003ctitle\u003e\u003c/code\u003e for the title\u003c/li\u003e\\n\u003cli\u003euse a custom field named ‘post_tag’ to import tags from a portion of the file\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003cp\u003eSee the \u003ca href=\\\"http://stephanieleary.com/code/wordpress/html-import/html-import-2-user-guide/\\\" rel=\\\"nofollow ugc\\\"\u003eUser Guide\u003c/a\u003e for details on all the options.\u003c/p\u003e\\n\u003ch4\u003eThanks\u003c/h4\u003e\\n\u003cp\u003eThanks to…\u003c/p\u003e\\n\u003cul\u003e\\n\u003cli\u003eTom Dyson’s \u003ca href=\\\"http://wordoff.org/\\\" rel=\\\"nofollow ugc\\\"\u003eWordoff.org\u003c/a\u003e for inspiring the Word cleanup option in 1.1. \u003c/li\u003e\\n\u003cli\u003eDion Hulse’s \u003ca href=\\\"https://wordpress.org/extend/plugins/add-from-server/\\\" rel=\\\"ugc\\\"\u003eAdd from Server\u003c/a\u003e plugin and bbqiguana’s \u003ca href=\\\"https://wordpress.org/extend/plugins/add-linked-images-to-gallery-v01/\\\" rel=\\\"ugc\\\"\u003eAdd Linked Images To Gallery\u003c/a\u003e plugin, from which I borrowed a lot of the logic behind the image import feature in 2.0\u003c/li\u003e\\n\u003c/ul\u003e\\n\",\"downloaded\":292784,\"faq\":\"\\n\u003ch4\u003eInstallation Instructions\u003c/h4\u003e\\n\u003cp\u003e\\n\u003col\u003e\\n\u003cli\u003eUnzip the files and upload the plugin directory to \u003ccode\u003e/wp-content/plugins/\u003c/code\u003e \u003c/li\u003e\\n\u003cli\u003eActivate the plugin through the \u0026#8216;Plugins\u0026#8217; menu in WordPress\u003c/li\u003e\\n\u003cli\u003eGo to Settings \u0026rarr; HTML Import to begin. You must save the settings before proceeding to Tools \u0026rarr; Import \u0026rarr; HTML.\u003c/li\u003e\\n\u003c/ol\u003e\\n\u003c/p\u003e\\n\u003ch4\u003eMy title imported, but the content was empty! (Or vice versa.)\u003c/h4\u003e\\n\u003cp\u003e\\n\u003cp\u003eYou didn\u0026#8217;t find the right HTML tag that surrounds the content you wanted to import. Open up one of your old files in a browser and use its inspector (or Firebug) to select the content you want. Look for the tag that surrounds that content and find something unique about it. (An ID attribute is best, but anything \u003cem\u003eunique\u003c/em\u003e will work. If it\u0026#8217;s a table cell, a unique width will do just fine.) The enter the tag name, the attribute name, and the attribute\u0026#8217;s value into the separate boxes in the Content section of the importer\u0026#8217;s options page.\u003c/p\u003e\\n\u003cp\u003eSee the \u003ca href=\\\"http://stephanieleary.com/code/wordpress/html-import/html-import-2-user-guide/\\\" rel=\\\"nofollow ugc\\\"\u003eUser Guide\u003c/a\u003e for details and examples.\u003c/p\u003e\\n\u003c/p\u003e\\n\u003ch4\u003eDoes this work on Windows servers?\u003c/h4\u003e\\n\u003cp\u003e\\n\u003cp\u003eYes! Let me know if you encounter any problems.\u003c/p\u003e\\n\u003c/p\u003e\\n\u003ch4\u003eWill the importer duplicate the design of my old site?\u003c/h4\u003e\\n\u003cp\u003e\\n\u003cp\u003eNo. The importer simply extracts the relevant part of each HTML file and copies it into a WordPress post. You\u0026#8217;ll need to \u003ca href=\\\"https://codex.wordpress.org/Theme_Development\\\" rel=\\\"nofollow ugc\\\"\u003ecreate a custom theme\u003c/a\u003e if you want to preserve the site\u0026#8217;s appearance as well as its content.\u003c/p\u003e\\n\u003c/p\u003e\\n\u003ch4\u003eWill this work on large numbers of HTML files?\u003c/h4\u003e\\n\u003cp\u003e\\n\u003cp\u003eYes, it has been used to import over a thousand pages, and did so in a couple of minutes. However, you might need to adjust PHP\u0026#8217;s \u003ccode\u003emax_execution_time\u003c/code\u003e setting as described below.\u003c/p\u003e\\n\u003c/p\u003e\\n\u003ch4\u003eI import a few files and then the script times out. What can I do?\u003c/h4\u003e\\n\u003cp\u003e\\n\u003cp\u003eThe importer will attempt to work around your server\u0026#8217;s \u003ccode\u003emax_execution_time\u003c/code\u003e setting for PHP (usually 30 seconds), but some servers don\u0026#8217;t allow this. You can try to increase it by adding a line to your \u003ccode\u003e.htaccess\u003c/code\u003e file:\u003c/p\u003e\\n\u003cpre\u003e\u003ccode\u003ephp_value max_execution_time 160\\n\u003c/code\u003e\u003c/pre\u003e\\n\u003cp\u003eIf that gets you further but still doesn\u0026#8217;t finish, just increase the number (it\u0026#8217;s in seconds). However, note that your host might get irritated with you for hogging the server\u0026#8217;s resources. If you have a \u003cem\u003elot\u003c/em\u003e of files to import, it\u0026#8217;s best to install WordPress on your desktop (XAMPP for Windows and MAMP for Macs make it pretty easy) and run the importer there instead of doing it on your live server.\u003c/p\u003e\\n\u003cp\u003eIt\u0026#8217;s also quite possible that the script is trying to use more memory than your server allows. You can try to change that setting, too, in \u003ccode\u003e.htaccess\u003c/code\u003e:\u003c/p\u003e\\n\u003cpre\u003e\u003ccode\u003ephp_value memory_limit 1024M\\n\u003c/code\u003e\u003c/pre\u003e\\n\u003c/p\u003e\\n\u003ch4\u003eShould I remove \u0026#8216;images\u0026#8217; from the list of skipped directories if I want to import images?\u003c/h4\u003e\\n\u003cp\u003e\\n\u003cp\u003eThe skipped directory setting just tells the importer where to look for HTML files. Linked images will be imported no matter where they\u0026#8217;re located.\u003c/p\u003e\\n\u003c/p\u003e\\n\u003ch4\u003eCan I import files from another server?\u003c/h4\u003e\\n\u003cp\u003e\\n\u003cp\u003eNo. The files must be on the same server as your WordPress installation. I have no intention of ever making this plugin import files from URLs. You are welcome to fork the code if you want to add this feature.\u003c/p\u003e\\n\u003c/p\u003e\\n\\n\",\"homepage\":\"http://sillybean.net/code/wordpress/html-import/\",\"icons\":[{\"type\":\"default\",\"url\":\"https://s.w.org/plugins/geopattern-icon/import-html-pages.svg\"}],\"installation\":\"\u003col\u003e\\n\u003cli\u003eUnzip the files and upload the plugin directory to \u003ccode\u003e/wp-content/plugins/\u003c/code\u003e \u003c/li\u003e\\n\u003cli\u003eActivate the plugin through the \u0026#8216;Plugins\u0026#8217; menu in WordPress\u003c/li\u003e\\n\u003cli\u003eGo to Settings \u0026rarr; HTML Import to begin. You must save the settings before proceeding to Tools \u0026rarr; Import \u0026rarr; HTML.\u003c/li\u003e\\n\u003c/ol\u003e\\n\",\"internal_ranking\":0,\"languages\":[],\"last_seen\":{\"timestamp\":1765174839.685,\"timezone\":\"UTC\"},\"last_updated\":{\"timestamp\":1511882040,\"timezone\":\"UTC\"},\"last_wordpress_compatible_version\":\"4.6.30\",\"latest_num_ratings\":10,\"latest_rating\":4.2,\"latest_ratings\":{\"1\":2,\"2\":0,\"3\":0,\"4\":0,\"5\":8,\"links\":{\"1\":{\"url\":\"https://wordpress.org/support/plugin/import-html-pages/reviews/?filter=1\",\"alt\":\"View all 2 one star reviews\"},\"2\":{\"url\":\"https://wordpress.org/support/plugin/import-html-pages/reviews/?filter=2\",\"alt\":\"View all 0 two star reviews\"},\"3\":{\"url\":\"https://wordpress.org/support/plugin/import-html-pages/reviews/?filter=3\",\"alt\":\"View all 0 three star reviews\"},\"4\":{\"url\":\"https://wordpress.org/support/plugin/import-html-pages/reviews/?filter=4\",\"alt\":\"View all 0 four star reviews\"},\"5\":{\"url\":\"https://wordpress.org/support/plugin/import-html-pages/reviews/?filter=5\",\"alt\":\"View all 8 five star reviews\"},\"all\":{\"url\":\"https://wordpress.org/support/plugin/import-html-pages/reviews/\",\"alt\":\"View all 10 reviews\"}}},\"minimum_php_version\":\"f\",\"minimum_wordpress_version\":\"3.0\",\"name\":\"HTML Import 2\",\"num_ratings\":32,\"pluginid\":\"import-html-pages\",\"rating\":4.3,\"ratings\":{\"1\":5,\"2\":0,\"3\":0,\"4\":2,\"5\":25,\"links\":{\"1\":{\"url\":\"https://wordpress.org/support/plugin/import-html-pages/reviews/?filter=1\",\"alt\":\"View all 5 one star reviews\"},\"2\":{\"url\":\"https://wordpress.org/support/plugin/import-html-pages/reviews/?filter=2\",\"alt\":\"View all 0 two star reviews\"},\"3\":{\"url\":\"https://wordpress.org/support/plugin/import-html-pages/reviews/?filter=3\",\"alt\":\"View all 0 three star reviews\"},\"4\":{\"url\":\"https://wordpress.org/support/plugin/import-html-pages/reviews/?filter=4\",\"alt\":\"View all 2 four star reviews\"},\"5\":{\"url\":\"https://wordpress.org/support/plugin/import-html-pages/reviews/?filter=5\",\"alt\":\"View all 25 five star reviews\"},\"all\":{\"url\":\"https://wordpress.org/support/plugin/import-html-pages/reviews/\",\"alt\":\"View all 32 reviews\"}}},\"reviews\":[],\"screenshots\":\"\u003col\u003e\u003cli\u003e\u003ca href=\\\"https://ps.w.org/import-html-pages/assets/screenshot-1.png?rev=1085315\\\"\u003e\u003cimg src=\\\"https://ps.w.org/import-html-pages/assets/screenshot-1.png?rev=1085315\\\" alt=\\\"Settings for files to import\\\" loading=\\\"lazy\\\" decoding=\\\"async\\\" fetchpriority=\\\"low\\\"\u003e\u003c/a\u003e\u003cp\u003eSettings for files to import\u003c/p\u003e\u003c/li\u003e\u003cli\u003e\u003ca href=\\\"https://ps.w.org/import-html-pages/assets/screenshot-2.png?rev=1085315\\\"\u003e\u003cimg src=\\\"https://ps.w.org/import-html-pages/assets/screenshot-2.png?rev=1085315\\\" alt=\\\"Content settings\\\" loading=\\\"lazy\\\" decoding=\\\"async\\\" fetchpriority=\\\"low\\\"\u003e\u003c/a\u003e\u003cp\u003eContent settings\u003c/p\u003e\u003c/li\u003e\u003cli\u003e\u003ca href=\\\"https://ps.w.org/import-html-pages/assets/screenshot-3.png?rev=1085315\\\"\u003e\u003cimg src=\\\"https://ps.w.org/import-html-pages/assets/screenshot-3.png?rev=1085315\\\" alt=\\\"HTML cleanup options\\\" loading=\\\"lazy\\\" decoding=\\\"async\\\" fetchpriority=\\\"low\\\"\u003e\u003c/a\u003e\u003cp\u003eHTML cleanup options\u003c/p\u003e\u003c/li\u003e\u003cli\u003e\u003ca href=\\\"https://ps.w.org/import-html-pages/assets/screenshot-4.png?rev=1085315\\\"\u003e\u003cimg src=\\\"https://ps.w.org/import-html-pages/assets/screenshot-4.png?rev=1085315\\\" alt=\\\"Title and metadata settings\\\" loading=\\\"lazy\\\" decoding=\\\"async\\\" fetchpriority=\\\"low\\\"\u003e\u003c/a\u003e\u003cp\u003eTitle and metadata settings\u003c/p\u003e\u003c/li\u003e\u003cli\u003e\u003ca href=\\\"https://ps.w.org/import-html-pages/assets/screenshot-5.png?rev=1085315\\\"\u003e\u003cimg src=\\\"https://ps.w.org/import-html-pages/assets/screenshot-5.png?rev=1085315\\\" alt=\\\"Alternative title specifications\\\" loading=\\\"lazy\\\" decoding=\\\"async\\\" fetchpriority=\\\"low\\\"\u003e\u003c/a\u003e\u003cp\u003eAlternative title specifications\u003c/p\u003e\u003c/li\u003e\u003cli\u003e\u003ca href=\\\"https://ps.w.org/import-html-pages/assets/screenshot-6.png?rev=1085315\\\"\u003e\u003cimg src=\\\"https://ps.w.org/import-html-pages/assets/screenshot-6.png?rev=1085315\\\" alt=\\\"Custom field settings\\\" loading=\\\"lazy\\\" decoding=\\\"async\\\" fetchpriority=\\\"low\\\"\u003e\u003c/a\u003e\u003cp\u003eCustom field settings\u003c/p\u003e\u003c/li\u003e\u003cli\u003e\u003ca href=\\\"https://ps.w.org/import-html-pages/assets/screenshot-7.png?rev=1085315\\\"\u003e\u003cimg src=\\\"https://ps.w.org/import-html-pages/assets/screenshot-7.png?rev=1085315\\\" alt=\\\"Category, tag, and taxonomy settings\\\" loading=\\\"lazy\\\" decoding=\\\"async\\\" fetchpriority=\\\"low\\\"\u003e\u003c/a\u003e\u003cp\u003eCategory, tag, and taxonomy settings\u003c/p\u003e\u003c/li\u003e\u003cli\u003e\u003ca href=\\\"https://ps.w.org/import-html-pages/assets/screenshot-8.png?rev=1085315\\\"\u003e\u003cimg src=\\\"https://ps.w.org/import-html-pages/assets/screenshot-8.png?rev=1085315\\\" alt=\\\"Import screen (directory/file selection)\\\" loading=\\\"lazy\\\" decoding=\\\"async\\\" fetchpriority=\\\"low\\\"\u003e\u003c/a\u003e\u003cp\u003eImport screen (directory/file selection)\u003c/p\u003e\u003c/li\u003e\u003cli\u003e\u003ca href=\\\"https://ps.w.org/import-html-pages/assets/screenshot-9.png?rev=1085315\\\"\u003e\u003cimg src=\\\"https://ps.w.org/import-html-pages/assets/screenshot-9.png?rev=1085315\\\" alt=\\\"Completed import: pages, rewrite rules, and images\\\" loading=\\\"lazy\\\" decoding=\\\"async\\\" fetchpriority=\\\"low\\\"\u003e\u003c/a\u003e\u003cp\u003eCompleted import: pages, rewrite rules, and images\u003c/p\u003e\u003c/li\u003e\u003cli\u003e\u003ca href=\\\"https://ps.w.org/import-html-pages/assets/screenshot-10.png?rev=1085327\\\"\u003e\u003cimg src=\\\"https://ps.w.org/import-html-pages/assets/screenshot-10.png?rev=1085327\\\" alt=\\\"Sample directory and file structure\\\" loading=\\\"lazy\\\" decoding=\\\"async\\\" fetchpriority=\\\"low\\\"\u003e\u003c/a\u003e\u003cp\u003eSample directory and file structure\u003c/p\u003e\u003c/li\u003e\u003cli\u003e\u003ca href=\\\"https://ps.w.org/import-html-pages/assets/screenshot-11.png?rev=1085327\\\"\u003e\u003cimg src=\\\"https://ps.w.org/import-html-pages/assets/screenshot-11.png?rev=1085327\\\" alt=\\\"The same site, after the import (directory hierarchy preserved as parent/child pages)\\\" loading=\\\"lazy\\\" decoding=\\\"async\\\" fetchpriority=\\\"low\\\"\u003e\u003c/a\u003e\u003cp\u003eThe same site, after the import (directory hierarchy preserved as parent/child pages)\u003c/p\u003e\u003c/li\u003e\u003c/ol\u003e\",\"short_description\":\"Imports well-formed HTML files into WordPress pages.\",\"support_threads\":0,\"support_threads_resolved\":0,\"tags\":[{\"slug\":\"pages\",\"label\":\"pages\",\"count\":528},{\"slug\":\"import\",\"label\":\"import\",\"count\":403},{\"slug\":\"taxonomy\",\"label\":\"taxonomy\",\"count\":297},{\"slug\":\"taxonomies\",\"label\":\"taxonomies\",\"count\":102},{\"slug\":\"static-files\",\"label\":\"static files\",\"count\":1}],\"tags_count\":1331,\"languages_count\":0,\"age_days\":5998.02061159353,\"installs_per_rating\":187.5,\"downloads_per_rating\":9149.5,\"installs_per_day\":1.0003300069363956,\"downloads_per_day\":48.81343679181094,\"reviews_per_day\":0.005335093370327443,\"activation_rate\":0.02049292311055249,\"version\":\"2.6\",\"marketplace\":\"wordpress\",\"marketplace_url\":\"https://wordpress.org/plugins/import-html-pages\",\"price\":null,\"wordpress_link\":{\"alt\":\"WordPress\",\"url\":\"https://wordpress.org/plugins/import-html-pages\"}}","shortDescription":"Imports well-formed HTML files into WordPress pages.","rating":4.3,"numRatings":32,"activeInstalls":6000,"downloaded":292784,"lastUpdatedTimestamp":1511882040,"minimumWordpressVersion":"3.0","testedWordpressVersion":"4.6.30","minimumPhpVersion":"f","supportThreads":0,"supportThreadsResolved":0,"stringifyAlternativesData":"[]","renderedAt":1767227380841},"__N_SSG":true},"page":"/plugins/[id]","query":{"id":"import-html-pages"},"buildId":"9dCGWG0jiTRmGB_b7UwMU","isFallback":false,"isExperimentalCompile":false,"gsp":true,"scriptLoader":[]}</script></body></html>