This guest post was submitted by Joseph. If you have WordPress knowledge and are interested in writing a post for Hack WordPress, please contact us.

This is the story of one man’s laziness and his quest to build a simple website that any client of his could edit. And leave him alone after the design was done.

I started doing this because I was tired of editing pages in Dreamweaver and uploading it each time a client wanted one word changed in the third sentence of the fourth paragraph on the About Us page. WordPress has a very convenient page functionality, and I decided to make the best of it. Here’s how you do it…

First off, you have to work on the design. You could always start with one of the many WP themes out there. Once you decide on one, though, you need to lose all the peripheral pages. Delete all the php files except for the header, footer, page, and the sidebar (if there is one). Keep the search file as well, for the time being. Then, rename page.php to index.php. Now you’ve gotten rid of the extra files, but many page templates have unnnecessary blogging-related stuff: trackbacks, comments and the meta bits. Delete them all. They usually come wrapped in little divs called “postmeta” or “postmetadata”, or something on those lines. Essentially, look for the divs that contain the tags the_time, the_author, the_tags, the_category, comments_popup_link and so on. You can find more of these template tags here. All you actually need from this page is probably the_post and the_title. Yes, really.

Now, lets get to the header and footer files. In the <head> section, delete the lines which contain links to the RSS feed (rss2_url) and the pingback URL (pingback_url). Similarly, in the footer file, delete any links to RSS feeds. That’s all there is to it.

When you get to the sidebar, you need to make some decisions, based on your requirements and on your theme. First off, is the sidebar widgetized? If it isn’t, get that widgetizing done. Did you delete functions.php a while back? Sorry. Restore it from your recycle bin… you’ll need that. Once your sidebar is widgetized, browse over to the widgets section and add widgets you want. Don’t throw everything in… you don’t need Akismet stats, for heaven’s sake.

Now we get to the search function. WordPress doesn’t search pages. Don’t ask me why. They just don’t. You’ll need a plugin like Search Pages. But first, figure out if you need a search page or not. If it’s a five page site, it’s highly unlikely anyone would need to use the search function. If your site runs into several dozen pages, keep the search function, unless your navigation is idiot-proof. Depending on whether you’re using search or not, keep or delete search.php. If you’re keeping it, don’t forget to remove the meta-stuff from the search results page.

You’ll need a contact form. What’s a static site without a good old contact form? Use one of the many plugins at the WordPress plugin directory.

Your theme is now ready, and you need to strip your CSS file a bit. No point in cluttering up your CSS with classes and ids you’ll never use.

Finally, if you’re doing it for clients who want to edit pages themselves, you don’t want them fooling around with the site settings and themes and plugins. There’s no telling what havoc they could wreak. Not to mention, create more work for you. This is where a very handy plugin comes in: Ryan’s Simple CMS. Set your client as a new user with Editor permissions, and they get a nice clean pages-only backend. They won’t keep writing new posts and wondering why the new page isn’t up. While you’re at Ryan’s you could try his Simple CMS theme as well, to help with your theme. It’s even got a nice Suckerfish menu built in.

Don’t forget the most important thing of all: setting a page as the front page for the site.

Kyle Eslick is WordPress enthusiast who took his passion for WordPress to the next level in 2007 by launching as a place to share hacks, tutorials, etc. Connect with Kyle on Twitter or Google+!

  1. Ryan says:

    Glad to hear you appreciate my plugin :)

  2. Angela Henderson says:

    Wonderful! I had been looking for this very information recently!

  3. Jermayn says:

    I have just finished doing this myself and was going to create a post about my experience.

    I would also suggest to actually edit the backend and get rid of the extra stuff in the main menu.

  4. Joseph says:

    Editing the backend by hacking the code is one way, but that means additional work during upgrades. Ryan’s plugin does it quite well…
    When logged in as a “client” all I see on my dashboard are links to New Page, Manage, Uploads, and Log Out. There aren’t even any WP related feeds on the dashboard.

  5. Josh Fialkoff says:

    I’ve been using WP as a CMS for several small sites I have done for friends and relatives…

    My question is this: What do y’all think of using WP as a CMS for sites with 100+ pages? Are there problems that will be encountered as the scale increases?

    The biggest problem I see is the navigation.

    I have not found a *great* plugin for navigation that allows drop downs and sub-menus. I did just see this post today:, but I have not tested it yet.

    I’d love to get feedback on this thought… if WP works for large-scale sites, I think it would be a great business tool!


  6. Tom says:

    I have spent weeks trying to find an answer to this question and cannot find anything:

    Is there a way to use WordPress to add comment functionality to pre-existing static pages? In other words, I have 80 pages that are essencially static. I would like to add a way for people to leave comments and read other people’s comments on each of my 80 static pages. Each page is written in php, so I would like to add some php that would call wordpress and have it manage comments for that particular page.

    I have already installed wordpress in a blog directory on my site, but I cannot figure out how to get wordpress to store and retrieve comments based on which static page I am calling it from. I basically want to have a page like the one I am writing on now (minus the sidebar). I just want to display the unique text and pictures of each static php page, and then have a nice way to view and submit comments. But I do not want to write the entire site in WordPress.

    Any suggestions?

  7. I spent a week scouring sites for information how best to setup wordpress as a cms. I was thorouughly confused until I reached your site. In one simple article you managed to lift the veil and now I can get on and do the job. Why so many others make it complicated when you make it simple I don’t know. Thanks.

  8. BBrian says:

    Cheers. You’re #1 result on Google for: use wordpress for static site.

  9. Josh Fialkoff says:


    I read this blog post and I must say that I think it misses the mark in a number of ways.

    It did motivate me to write a response on my blog. I would be quite interested to get your feedback.


  10. amp says:

    Hallelujah, thank you!!!

  11. Kyle Eslick says:

    @ Josh – This was actually a guest post, but I feel that it was well written and explains what the author was trying to accomplish.

    After reading your post, I’m concerned you may be confusing a static site with a CMS, which stands for Content Management System. A CMS is basically a way to display a large amount of content in order to highlight a number of recent posts and is ideal for large websites that update regularly.

    A static site is in fact static, meaning it is not updated. You build the site and the pages rarely (if ever) change. Most static sites are just a big homepage and possibly a contact form and/or an about page. My wife’s website and many small businesses are setup this way to serve as a business card, strictly for search engine rankings and to make their business look more professional (due to the web presence).

    Also, the link in your post to Joost De Valk’s website is to his homepage. A quick search didn’t uncover the post you are referencing, so I wasn’t able to review it. However, I’ve been a long time reader of Joost’s work and I’m sure it was well written and on the mark. I’m just not sure how it relates to a post about static sites.

    With all that said, I think your post was very informative and well written. I am just concerned that it is talking about something completely unrelated to what is written above. The people looking to build a static site do not want a CMS. In fact, a blog is traditionally a bridge between a static site and a CMS, making them almost opposites.

  12. Josh Fialkoff says:

    Honestly, I think the whole concept of a “static” Website is outdated and misleading.

    The Web craves and prizes change.

    Even if you are just going to have a “business-card” type site, you will still want to update it at some point (unless you’re dead…).

    It’s not necessary to have lots of content in order to warrant using a CMS.


  13. joseph says:

    I’m the guest poster, and I agree with Josh that the method I’d written about limits the site to a great extent. And it’s meant to. However, as Kyle mentioned, I was only talking about static sites.

    As much as the web may love change, there are enough and more people out there who don’t.

    They have no idea what a blog is, and have a tough enough time understanding the concept of having a website… even as a business card. I’ve done around ten such sites, and the only updates I’ve ever made to them were to add new products to the product page.

    And no, they don’t want it mentioned on their front page.

  14. Kyle Eslick says:

    @ Josh – No problem! Like I said, I enjoyed your post, I just felt they weren’t discussing the same things or the same situation.

  15. Josh Fialkoff says:

    Joseph and Kyle,

    Thanks for your follow ups. It’s great to have this sort of dialogue! ;-)


  16. jim mccann says:

    I’m just finding out about WP and I thought this was a great article as I wanted to know the minimal number of files required for publication.

    Is there anywhere I can get a minimal set of files as described?

    I have taken some templates and deleted all additional files, but with the files left I get a range of errors such as unreferenced calls etc.

  17. HB says:

    Thanks Joeseph, this is a great informative article, I have been trying to do this for a while but i was missing changing the page.php to index.php.

  18. Seba says:

    Very helpful ‘howto’, thanks :)

  19. Lisa says:

    Love it! Thank you so much for sharing

  20. Brett says:

    This is great.. Is anyone interested in developing a project where we take wordpress and strip it and make it for use as a CMS for static sites only.. I think its a good idea and I know it would be very helpful for people who don’t know there way around the code

  21. Josh Adams says:

    Great posts. Actually, I like the way you designed this page. How did you get all of the menu buttons in the header section? You have three different rows and one has drop-down sub-menus. Very nice.

  22. Joseph says:

    you had me at ” I started doing this because I was tired of editing pages in Dreamweaver and uploading it each time a client wanted one word changed in the third sentence of the fourth paragraph on the About Us page.” I just started laughing to myself. Thanks for opening with a joke “a true showman”.

  23. this nice post. i like this theme. thank you …

  24. jasem says:

    Thank you very much for this post.

  25. Megan Mckahan says:

    very interesting, learn a lot!.

  26. Luke says:

    How to make the posts section of the WP static?

  27. Bob Parker says:

    Man, I just created my first WP blog/site. I wish I had seen this information first! Thanks for showing how to strip out the non-essentials.

  28. Thank you very much for this post…

  29. Brad T says:

    Thanks a lot, this made things much clearer for me :)

  30. Jon Smith says:

    As soon as I completed the first step my site completely broke. It seems that the php files that are recommended to delete must be necessary. As soon as I deleted them the site became so broken it would not even display a 404 error.

    I am also looking for a way to get rid of 9 Word Press features but to still have a functioning website.
    I would like to delete the “Looking for Something”, “Visit our Friends”, “Recent Posts”, “Browse”, “Archives”, “Search”, “Skip to Content”, “RSS”, and Uncategorized”. For a typical corporate site the blogging, comments and that other stuff should be deleted.
    I have been searching Google, reading and trying everything I can find to get rid of this stuff.
    Is there a way to delete these features or should people looking for a straight CMS/NoBlog site be looking for a solution other than WP?

  31. Brenda says:

    Hi, I would love your feedback on an endeavor I’m contemplating. I have a static website with nearly 300 pages that I’ve been thinking about converting to a blog that I would recreate via static pages. I’m considering this for 2 reasons:

    1) to enhance visitor activity. I have 5 user-interactive sections on my site & this would make that easier. It would also enhance user interaction on the other sites so I am wanting the comments feature of a blog;

    2) I have heard that search engines love blogs. While I am a code geek & have clean code on my site & it does very well in search engines, I always want better (what webmaster doesn’t).

    One drawback is I am weary of using something else that generates code for me because they often tend to balloon the code with alot of unnecessary stuff.

    So in your opinion, would it be too cumbersome or actually beneficial to convert a site this large to a static blog with comments?

    Thanks in advance for any and all input!

Trackbacks/Pingbacks »

  1. Using WordPress as a Content Management System (CMS) - Online Marketing (SEO, PPC, social networks) | Josh Fialkoff says:
  2. Using WordPress to Build a Static Website | Virtual Websource says: