Create an Effective Sitemap Page Template in WordPress

Sitemaps are great as long as they aren't complicated!

[This post is part of the Ultimate Guide to Launching a WordPress-Powered Blog series.]

[Are you looking for a Sitemap for Search Engines? This is a different concept covered here.]

This post is very similar to both content and form from the “Add an Archive Page” blog post but it’s still worth a few moments of your time! The bottom line is this: A sitemap can not only enhance usability for your readers but also provide both visitors and search engines a better site architecture in which to navigate!

If you’ve got the time then it is worth building one!

So, a very typical question is this:

What is the difference between a Sitemap and an Archive Page in WordPress?

Generally the differences are understood as such:

  1. An Archives Page typically shows posts that are date-based (day, month, year), either reverse chronologically or by category, tag, and other such top level sorting schema. The point is to provide a listing of your posts as you would typically understand an “archive” to have!
  2. A Sitemap is more of a listing of all the pages that exist on a property or blog. This can include posts but it is generally has more of the “static” pages, sub-pages, and a list of top-level navigational items (categories perhaps). If you have deep site architecture then you’d want a sitemap for sure.

So, why have both of them? The answer to that is quite simple: It depends. Why? Because from a content perspective the two could look very similar. In fact, if you take a look at my Archives Page and also my Sitemap Page you’ll see a lot of similarities:

  • Lists of posts in categories and/or date-based.
  • List of pages on blog.
  • A number of other elements that a blog owner might put in there.

So why have one if they are relatively the same? Why have both? Here are some thoughts:

  1. Depending on your blog you might favor one over the other. Personal preference plays a roll here.
  2. Your community and visitors might culturally understand one better than the other. Play to the community’s strengths and natural tendencies here!
  3. Your site might look more like a typical website and less of a blog. You might want to opt for a sitemap instead.
  4. Your site might have a blog but is really deep as it relates to pages, sub-pages, and sub-pages of sub-pages. You have some extensive site architecture and as such you’ll probably want a sitemap.
  5. Your design favors to have both which are displayed in different areas as it relates to the context of your site and design around it. Have both and have fun!
  6. And many other reasons.

So why do I have both? Simply because this blog is new enough to warrant both to see which one this community favors. Also, since I haven’t completely designed this blog yet in it’s final form (see post here on more about this) it’s fine to have both and provide alternate avenues for new visitors to browse my content.

Ultimately I’ll probably land with a combination of the two in a more “sitemap-esque” look when I finalize the design, but it seriously doesn’t hurt to have both.

3 Ways to Add a Sitemap Page in WordPress

The first is pretty simple: If your WordPress Theme (like Standard Theme, the one I’m using) comes with a page template for a sitemap then all you have to do is create a new page, choose the page template, and then hit publish!

Check it out:

Just a few clicks away... with the right WP Theme...!

Easy, right?

The second way is to use a WordPress Plugin. Here are a few that have worked well historically:

  1. Dagon Sitemap Generator
  2. WP Realtime Sitemap
  3. WP Simple Sitemap

There are many others out there and you can try them all of course or you can try the third way which might just be the best way (or second best to the first option above): Create your own Sitemap Page Template!

First, create a new sitemap.php file and upload it via FTP using your favorite app (here are the FTP apps that I use):

Just upload or create the new file via FTP.

and then just copy and paste the following code into that file:




Comments are closed.