1. Standard permalink structure.
2. Permalink structure with .HTML extension at end – the uber cool permalink structure.

Most Wordpress blogs, use a common permalink structure. They use one like the first shown above:

/%category%/%postname%/

… or more simply a lot of wordpress blogs just use:

/%postname%/

These two permalink structures are boring, like I said they are “common“. But if something is common, that’s a bad sign isn’t it, yes? Yes it is. When something is common it shows that it is fashionable. Stuff fashion, let’s be creative, let’s be cool.

So what’s the coolest permalink structure?

I don’t know what the coolest permalink structure is – perhaps you can argue among yourselves. But I do know of some cool permalink structures. And one of the most hip permalink structures is the following:

/%category%/%postname%.html/

So what? Why should I care? What’s the difference Mr Wordpress Hero?

Ok, ok. Keep your pants on. The difference is that at the end of permalinks the “.html” extension will be added.

Yeah but who cares? What’s the benefit of having “.html” at the end of permalinks?

Google cares. So does MSN and Yahoo maybe. They care enough to give you extra kudos, maybe not a lot, but extra kudos nonetheless. The reason why you will get more kudos from the major search engines for using “.html” or any similar extension in your permalinks is well because of two main reasons:

  1. The Static look. The “.html” extension makes your blog posts and pages appear to be static. Using “.html” will encourage spiders to come and crawl your site more frequently. While you could use “.php” as an extension for your pages, because of this benefit – ‘the static look’ – , it’s not recommended “.php” in your permalink would tell the search engines that your content is dynamic and so search engine spiders may limit the frequency they check out your website.
  2. A higher level. Consider this, imagine you have a blog post entitled, “How To Make A Million Dollars In 1 Year” in a category called “make money online”, let’s compare how that post’s permalink would differ:
    /make-money-online/how-to-make-a-million-dollars-in-1-year/

    or

    /make-money-online/how-to-make-a-million-dollars-in-1-year.html/

    The latter’s permalink is superior. Why? Because it is considered 1-level higher than the first therefore is given extra kudos by google.

Ok. Let’s do this on my wordpress site right now!

Cool. To make the permalink structure of your blog add “.html” as an extension to permalinks, thus moving your posts one level higher and giving them a statuc look that will earn you extra kudos from the search engines. Follow the following two steps:

1 Change Permalink Structure

Change your permalink structure to the following:

/%category%/%postname%.html/

2 Download and Activate The “.html” on pages Wordpress Plugin”.

By default in wordpress, your “/%category%/%postname%.html/” permalink structure will only apply to blog posts – so we are going to require a plugin for pages. Right, ok. Easy. Go download and activate the “html on pages” wordpress plugin.

That’s it. Easy. Have fun. Keep it real. And enjoy the extra kudos the major search engines will give to your Wordpress blog for having the “.html” extension in permalinks.

P.S. Just in case you’re a slacker and you’re crying right now, and whinging that “this is not going to make a massive different to my SEO efforts and get me on page 1 position 1 within 1 hour.” Let me tell you, if that is you (you slacker) you would be right. But remember what SEO is. SEO is a bunch of tweaks that when combined together can equal something substancial. Don’t believe me? Slacker. Here is what google say about SEO:

Search engine optimization is often about making small modifications to parts of your website. When viewed individually, these changes might seem like incremental improvements, but when combined with other optimizations, they could have a noticeable impact on your site’s user experience and performance in organic search results.

P.P.S. The above quote is taken from the first page of Google’s recently released Search Engine Optimization Starter guide. You can download your copy by right clicking and saving the below link to your hard drive.

Download Google’s Search Engine Optimization Starter Guide

  • Hello..

    Thank you for sharing on this topic its a great topic and  i was agree with your thought ..

    Regards

  • Great...i have tried this and it works...can you tell me something more about this...i also want a suffix of HTML for my website.

    Regards

  • RichardMCV

    But what if I already have a wordpress-ste with the following permalink: /%year%/%postname%/

    When I change these permalink to the version with .html at the end, will the former pages still be seen in Google?

  • This is a great post. I wanted to migrate my websites to use the .html extension and must have referred to this post a million times.

    Thanks....

  • Generally .html will not add any profit to gain high rank , but using .html structure in Permalink is useful when you are migrating from blogger to WordPress to retain URL structure like Blogger 

    www.mydomin.com/2010/02/post_n...

    We can later change URL pattern to www.mydomin.com/post_name.html using .htaccess file because Google gives attention to url upto 80 character (i think) , so its better to keep URL more relevant and length as small as possible

    Regards,
    http://www.c4learn.com/ 

  • Just the thing I was looking for!...Thanks for the valuable info.  Did your advice and got the results I wanted, same with the plugin you have suggested...Keep it coming! :)

  • Mjh001

    Okay, for the problems I was having the answer fell upon the .htaccess file. Normally WordPress will have already added the correct information during install; however if it was not allowed write access to .htaccess then the correct settings to allow mod_rewrite to rewrite the permalinks url will fail thus giving a 404 error. By adding the bit of information below you will be able to tell the server to allow your permalinks to display as you wish.

    # BEGIN WordPress<ifmodule mod_rewrite.c="">RewriteEngine OnRewriteBase / RewriteRule ^index\.php$ - [L]RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . /index.php [L]</ifmodule># END WordPress

    A few notes about this:
    RewriteBase = the server's path to your WordPress installation so if your install is in the root the above code is already correct. if you installed into a directory called wordpress you might want to change it to:RewriteBase /wordpress/RewriteRule . /index.php [L] = If have installed into a directory this line will also need to be updated as well like so:RewriteRule . /wordpress/index.php [L]

    Hope this helps some folks out.

  • Mjh001

    I would like to know how to trouble shoot this a bit better. 

    What is required on the hosting side to make it work correctly?
    I set everything up on an in-house server and the permalinks worked as desired; however when I moved it up to my hosting server all I get is 404's.Is there perhaps something in cPanel I need to adjust or change on my hosting box to allow this to work correctly?

  • Thanks for explaining why the .html and the .html with the extra / at the end make a difference.
    I've been searching and youre the first to lay it out so clearly.

  • How can you prove that the html extension increased your search ranking?

  • Hi i am totaly agrees to this. But i need .htm extension on pages instead of .html what i can do?

  • Bob

    Thank you. I've never understood that html extension on blog posts.

  • Steven

    I have an issue with the categories...

    For example I have the category "Cats" and then the sub pages "White" "Short Hair" and "Fluffy"

    If I go to Cats it will display cats.html
    but if I go to fluffy it will display cats/fluffy.html
    How can I make the category non html so it will be cats/ not cats.html?

    Thank you.

  • This is good permalink option I have choosen it and adopted it. But this method don't add .html to category permalinks and page permalinks.

  • The "Advanced Permalinks" Plugin will help to include the .html extension on your category pages.

  • Matt Strange

    Interesting thought on the html extensions, would be great to see some tests.

    I never really thought that Google will give more authority on different file extensions, it's a possibility, Google is the nuts!

  • I tried your method and its works amazing. Can you let me know how we can add .html extension to pages.

  • It is on the post itself. Mr.Wordpresshero clearly mentioned it there. You need to use the " .html on pages" plugin.

  • Ger

    If you add a trailing slash like "/%category%/%postname%.html/", your page url will not appear to be a html page to search engines. Instead, it will look like a directory with ".html" in the name.

    Say you really had a site with static pages. Then

    http://www.mysite.com/page1.ht... resolves to
    c:\webroot\page1.html
    (provided c:\webroot\page1.html is a file), while

    http://www.mysite.com/page1.ht... may resolve to
    c:\webroot\page1.html\index.html
    c:\webroot\page1.html\Default.aspx
    etc.
    (provided c:\webroot\page1.html is a directory).

    You won't get the static look and higher level advantages that you desired until you remove that slash...

  • Sushil Kumar Pandey

    Hello there.

    I am in a big problem. I have done all the steps mentioned here. On mouse over it shows the link with .html extension for posts as well as pages. But if I clicks on a link it gives the 404 error like The requested URL /wpthemes/about.html was not found on this server.
    Here 'wpthemes' is the directory root on my local server.

    Please Help!!
    Thanks in advance.

  • Giacomo

    Hi, i have the same issue for the pages, not for the post, that works ok. what can i do? tnx

  • Try this on a live website. This permalink modification will work there.

  • Thanks for the article...I'm running around the blogs on how to add .html extension to posts..Non have answered by query...I found you cheese

  • Hi, I've just installed your plugin and it's working like charm, however, on my site I use different custom post types and those are not getting the .html like pages do. I was wondering if you have a fix for this problem. Many thanks, and I appreciate your great work.

blog comments powered by Disqus