This is a question I get on a regular base: How can I convert my Static HTML to WordPress based website?
Let me give you a warning in advance, a WordPress website needs to be kept updated!
A static HTML site can run for years without you ever touching it for things like security updates or new versions. Just to make you aware of the need for updates!
Another thing that needs really close attention is to make sure that your rankings in Google and other search engines stay intact.
That means you need to make sure that the URLs of your old site will stay the same with your new WordPress based website.
Luckily this can be done and for those few links you want to change you can redirect them via your .htaccess file.
Convert Static HTML to WordPress
But first things first, the conversion of your website.
First, what do you need:
- good hosting (aff) that support php
- a mysql database: databasename, username for that database and the password for that useraccount
- the possibility to use a .htaccess file
If you are not sure about the above mentioned items, ask your website hosting (aff) provider!
Installing WordPress in a Subfolder
The first thing you will do is to install WordPress into a Subfolder like /cms .
After you finished the installation you have to set the Privacy setting so that Search Engines are not allowed to visit and index your site (Settings -> Reading) so your new URLs are not getting into the search engine indexes until you are ready with your conversion.
Now you can start building your WordPress website next to your current site, that site will stay active while you build a new one.
Keeping Old URLs
Like a mentioned before, it is very important that you keep the URLs for the new site the same as the old one!
That is why you need to set the Permalinks to custom with the value /%postname%.html this will result in Posts links with the extension .html.
During the development of your new site the urls will be like /cms/page-url.html , but after the final steps this will become /page-url.html , that same as the old site.
Make sure that the “slugs” are the same as the old site, and there is a plugin that you will need which is “.html on pages” . I take it you will have some pages that use the extension .html
You can now start to convert your old pages to WordPress by copying the text or the HTML code of the content from the old website into the HTML code screen of WordPress.
Your page URL is created by the Title of your page, but you can change them by editing the Slug permalink.
There is a plugin that could help you convert old pages: http://wordpress.org/extend/plugins/import-html-pages/ Attention! For this plugin to work you really need PHP5! Ask your hosting provider if you are not sure.
Website Layout
The conversion from your old static HTML to WordPress based site with the same layout is a completely different exercise than what I am describing here, to do that your will have to get a complete custom Theme / Layout.
But why not take this opportunity and change the look of your site together with the conversion? Choose a nice premium or free theme that will fit you company / website topic and customize it to your needs.
If you are happy with the look and feel and the content of your site you can follow these step to get it “live”:
1. delete or rename the index.html file in the root of your old site.
2. copy the index.php and .htaccess file from the /cms folder to the root of your site
3. change one rule in the index.php file into require(‘./cms/wp-blog-header.php’); (only with the index.php file in the root, not in the folder /cms!!)
4. change only the Site address (URL) in the general setting (Setting -> General) into the domain (aff) name. (remove the /cms part)
5. remove or rename the old .html files.
6. change the privacy settings so the Search Engines can access and index the site again.
If you handle the change over it this manner, than your old site is not reachable during the 5 minutes you need to rename the index.html so the index.php takes over and if you kept your URLs you are not loosing any visitors from the search engines like Google.
And of course you have taken a complete Back-Up of your old static website so you can restore your old side if you should encounter any unexpected error(s).
If you want new URLs for your pages than you can redirect the old URLs to the news ones in two ways:
- use a plugin http://wordpress.org/extend/plugins/redirection/
- via the .htaccess file in which you have to write a rule per url you want to forward: redirect 301 /olde-url.html http://www.example.com/new-url.html
However if you change your URLs, even with a 301 redirect you could loose some credit and backlinks that are pointing to your site.
Good luck and if you still have some questions, please use the contact form.
If you have other tips and additions that might help others, please write them in the comments section below.
One last question: Is there a need to have this information in an even more detailed form like a pdf manual with screen shots and tips? if so, please leave a comment.
Update: You asked for it and now it's finally here… From Static HTML To WordPress version 1.0
You can share the PDF with friends, post it on you website but you cannot sell it or change anything in it! If you find any language or grammatical errors please let me know so I can correct them.
Leah says
One last question: Is there a need to have this information in an even more detailed form like a pdf manual with screen shots and tips? if so, please leave a comment.
Yes please. That would be very helpful.
kyle says
yes. there is… please!
Teresa Rothaar says
I agree; a pdf would be very helpful!
NYC Birthday says
Hi there. This information is great, but a PDF with even more detailed information would be extremely helpful.
Pam says
Yes please! I think that would up my comfort level alot if I decide to attempt this.
Curt Preston says
I would very much like to see a more detailed PDF for converting.
Eric says
Is there a way to use WP as a CMS for a site that is already complete without moving/changing the current website. My client would like to make changes to the site via a CMS system.
Thanks
Herbert-Jan van Dinther says
@Eric, sorry for the late response. To answer your question, the current site of your client really needs to be converted into a WordPress website.
A cms works with the content stored in a database and the layout via layout templates.
So you really need to convert the site in a way that the contant is separeted . The site does not need to move and there are services on the internet that can convert the layout of the current site into a WordPress theme. That way you keep the look and feel of the site and have the power of WordPress.
saleem says
Hi, Thanks for the great info. I have one question. I recently converted my old static site to wordpress. I followed the exact procedure as described by you. Now I have just one confusion. The backlinks to my old site are all like this http://www.mysite.com/aboutus i.e. they do not have the .html extension in them. Now since i changed my permalinks to http://www.mysite.com/aboutus.html (with a .html extension) a url without the .html extension will give a 404 page. Will I loose all such backlinks? How to fix this problem?
Thanks
Herbert-Jan van Dinther says
@Saleem: The .html extensions isn’t mandatory, in your case you could try to set the permalinks options to /%postname% and see if that works for you.
However if you want to keep the .html extension and not loose the backlinks and rankings you can redirect the old links to the new ones.
There are two ways to do that, first is with a plugin called http://wordpress.org/extend/plugins/redirection/ or via .htaccess 301 redirects.
I think the plugin will serve you best if you have a lot of pages or if you don’t like to edit your .htaccess file.
If its just a few pages you can create a 301 redirect rule for every page, and those should be in your .htaccess like:
Redirect 301 /aboutus http://www.mysite.com/aboutus.html
The first value is the old slug without the domain (aff) name, the second value should be the full new url.
Hope this helps.
Seyl Park says
Hi. I would love a pdf version of this. Thanks!
Walter Price says
I also would like a .pdf of your directions to change a static site to a wordpress site.
Thank you,
pooja says
Please provide the PDF version.
miryam rosas says
Hi, I currently have the top place in ranking for Au pair Australia or Au pair agency Australia
and I wonder if there is a risk passing all my HTML site to WordPress?
will it affect my ranking?
Please provide pdf version, thanks in advance for your help
Herbert-Jan van Dinther says
@Miryam, There is always a change that you risk your rankings, but you can limit that risk if your make sure that your new URLs are the same as the old ones. Google also takes webspeed into account so you should check your website loading speed before and after the switch (http://tools.pingdom.com/fpt/) and if it is slower than before try a cache plugin like Hyper Cache or W3 Total Cache.
P.s. for all thise who where waiting for the PDF, you can now find it here
Amar Pawar says
Yeah, WordPress is too easy to use. Please provide a document where we can download this information.
Mike Bradson says
You may need to try flash-html5.net
First of all they are very Cheap, Professional and Fast responding.I know that a bad website experience can create bad feelings about your company.
A poor mobile experience makes them less likely to engage with a company in the future.After your site is converted to HTML5, WordPress, Joomla etc., search engines will be able to crawl and index it. Customers will then be able to search you, and view your website on any mobile device that they own, ultimately increasing in your search engine rankings…. :wink:
alexanderf says
Hi, thanks for sharing this information!I have a question is it possible to set up 301 redirects from static HTL site to WordPress? I’ve already converted my data with cms2cms automated converter but now I have some troubles with the redirecting my site…
Herbert-Jan van Dinther says
@alexanderf: You can do redirect via your .htaccess file like: Redirect 301 /old-page-name http://www.your-domain (aff).com/new-page-name or you can use a plugin that can also capture 404 error urls http://wordpress.org/plugins/redirection/
I always use the .htaccess option, because it brings stable results without the extra need for a plugin.
Cassie says
This is really a great post! Very informative and very useful. Thank you for sharing this idea.
alexanderf says
Herbert-Jan van Dinther, thank you so much! You helped me greatly! I have already used 301 redirects. Is it possible to combine 404 and 301? I have added both for separate pages.I also wanted to add to my previous comment a link of that automated converter – http://www.cms2cms.com/supported-cms/html-to-wordpress-migration
Mike Swan says
Well first of all i would like to appreciate your efforts on providing such valuable and informative content.
I have been facing some problem while moving from visual editor to HTML editor. I’ve been looking around for a solution that will allow me to edit HTML code and have it remain after a switch to the Visual editor and back.
I’ve tried a bunch of things with no luck:
the wp-no-format plugin
the Raw HTML plugin
entering all my HTML on one line
If it were just me managing the content, I would disable the Visual editor. But as I have a number of content managers, and pages on which there is HTML (forms, for example) and content that they need to edit, that’s no an option.
Any suggestions will be greatly appreciated.
Tatiana C says
Hi, I was wondering if you can answer this question: I’m planning to convert my old HTLM site to WordPress and I want to create new friendly URLs. (the old site has very odd URLs). I already figured how to use the redirection plugin but I don’t know what to do with the index.html page. I figured that I will have to redirect from “/index.html” to “/” is that right? or do I have to redirect to “/index.php”?
I don’t really care about the search engines so changing the URLs is just to make the site more user friendly.
Thanks in advance for your help!
Herbert-Jan van Dinther says
@Tatiana C: Yes, you are correct. The “index.html” can be redirected to “/”. Success with your conversion :-)
Tatiana C says
Just a quick note to thank you for the fast reply. Have a great weekend!
krrahman says
Thanks wpsitebuilding com for sharing their great article on html to cms with significant instructions. It is the time when simple html web site owners like to have their site in new look and in new enhanced features as well. The tips discussed here is really a awesome. Thanks author.
Antonnette says
Thanks for those info about WordPress conversion. Given the popularity of WordPress, switching to this platform has its benefits. You may also check out some of the benefits we gathered.
Barb says
“After you finished the installation you have to set the Privacy setting so that Search Engines are not allowed to visit and index your site (Settings -> Privacy) so your new URLs are not getting into the search engine indexes until you are ready with your conversion.”
Has this feature been deleted? I don’t see Privacy as a choice under Settings. Do you have other suggestions to accomplish the same thing?
Herbert-Jan van Dinther says
@Barb: Thank you for the question! This setting has indeed moved, you can now find it under Settings -> Reading. I have changed it in the article for future readers.
Barb says
Thank you so much for the answer, and for writing this post. I’d figured out moving was basically a cut and paste from html into WordPress, but I couldn’t figure out the last step–how do you get the new file to replace the old, if it has a different name, because it has a subdirectory before it? Apparently the WordPress address and site address are two different things. Would it be correct to say that the WordPress address is a “real” address, meaning that’s where it’s found on a server, but the site address is conceptual, meaning you could really call it anything? Again, thanks for educating us non-programmers!
Herbert-Jan van Dinther says
@Barb: The WordPress address is indeed the path on the server where the installation files live. The Site address is in the way conceptual that is can be chanced but is certainly has a relation to the installed files, so you cannot change it to anything you want, but you can do nice things with it that is why I always just removed the install folder name.