Feed on Posts or Comments

WordPress & SEO Chris Gray on 26 Jul 2007

Playing it safe with Search Engine Safe URLs – How to optimize your WordPress Permalink structure

One of the first tips I picked up while delving into the world of SEO was the use
of so called “Search Engine Safe” (SES) URLs. SES URLs are formatted in such a way
that your query string parameters appear to be part of the path. The result is a cleaner,
more “human readable” URL that is more likely to be indexed by most search engines.
While search engines vary on what they will and will not crawl, most spiders tend
to ignore pages that contain numerous query string parameters so most SEOs recommend using Search Engine Safe URLs whenever possible.

For example:

Typical dynamic URL:
http://www.seoladder.com/index.php?category=seo&id=1234

Search Engine Safe URL (note the query string is now part of the path):
http://www.seoladder.com/category/seo/id/1234

Ho to create SES URLs in WordPress

Fortunately, WordPress allows you to optimize your Permalink Structure right out of the box without the need for additional plug-ins or code hacks. The downside is that SES URLs are not turned on by default and many users (including myself) fail to activate this feature until after they have been indexed (more on this in a minute).

To turn on Search Engine Safe URLs in WordPress you will need to perform the following steps (Note: this tutorial is based on WordPress 2.2):

  1. Login to the WordPress Admin and select Options | Permalinks
  2. From the Permalinks sub-page you will be presented with four Permalink options (Default, Date and Name Based, Numeric, and Custom). Choose one of the three SES Permalink options that best suits your needs (i.e. Date and Name Based, Numeric, or Custom).

WordPress Permalink Structure Config Screen.

  1. Finally, click the Update Permalink Structure button to commit your change. That’s it, nothing to it.

Which Permalink Structure should I use?

Most web masters tend to use “Date and Name Based” Permalinks because the post name is included as part of the URL. By including the post name in your URLs you can potentially boost your page’s ranking (provided you’ve included relevant keywords in your page titles). You can also design your own Permalink structure by selecting the “Custom” option. Beware though, if you choose to go with a “Custom” Permalink structure be sure to include some sort of numerical data in the URL structure (i.e. post id, or date). Using the post name alone can prevent you from accessing some pages such as style sheets or the wp-admin.

Caveats

While WordPress makes it extremely easy to change your Permalink structure, you should carefully weigh the pros and cons before deciding to make the switch. For example, if your blog has already been indexed under the default Permalink structure you will loose your existing page rank for those pages already in the index (not to mention you will also now have bad links in index). Changing your Permalink structure will also break any incoming links that have accumulated to date. To avoid these issues you will need to ensure that the proper 301 redirects are in place before you change over to a new Permalink structure. I suggest taking a look my previous post on the proper way to move a web page for additional information on how redirect old links to your new Search Engine Safe URLs.

What SES structure are you using?

As you may have already noticed I am currently using the “Date and name based” Permalink structure on this blog (as well as a few others that I maintain).I would be interested in hearing your take on SES URLs and what structures are preferred by other webmasters…

Share: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • StumbleUpon
  • Technorati
  • YahooMyWeb
  • Bumpzee

Blogging & WordPress Chris Gray on 16 Jul 2007

How to backup your WordPress blog - WordPress Configuration Management

Having worked as a software contractor in the Defense industry for a number of years I quickly picked up on the importance of Configuration Management (CM) and software change control. The value of developing a good configuration management plan was burned into the back of my head very early on in my career.

By managing the changes made to a work product you are able to recreate it from scratch in the event of a failure (such as a loss of a hard disk or virus). Managing change also allows you to revisit various work product “milestones” at different stages in the development lifecycle (e.g. two releases ago). While quite painful at times, CM can benefit all types of software applications (including WordPress).

The problem with WordPress in regards to CM

When I created my first WordPress blog I instantly fell in love with the speed at which you could get a website up and running. I also fell in love with the ability to change the look and feel of my blog with almost no effort (and all from the comfort of my favorite web browser). With “ease of use” also came the ability to trash my entire blog with a single click.

I’m sure many of you have been there; you activated that brand new WordPress theme and then spent the next three days tweaking the code to get it just how you like it. Then during testing you finally notice that one column hanging out of alignment (which has been for the last day and a half without you noticing). You have no idea which change made over the course of the last three days could have caused it and are forced to start over from scratch…maybe you haven’t but I have and it really sucks.

If I would have saved my changes at various “milestones” along the way I would have saved myself from having to start over from scratch. What’s worse was that I made all of those changes on my live “production” server and my readers were watching the mishap unfold right in front of them!

My Solution

With that being said I quickly made a visit to my “CM Happy Place” and decided to approach my blog the same way I would approach developing a piece of software.

  1. Create a development environment.

The first step I took was to set up a local test environment that mimicked my WordPress setup on the web. This might sound like a no-brainer to most but there are many bloggers out there who have never developed a piece of software before or have ever heard of the SDLC. This single step can save you hours of downtime when you decide to make a change or perform an upgrade.

Creating a local development environment entailed the installation of three software components (a Web Server, a Scripting Engine, and a Database). You may have heard of the term LAMP. LAMP stands for Linux (OS), Apache (Web Server), MySQL (Database), and PHP (Scripting Engine). In my case I am running Windows so I went with a WIMP (Windows, IIS, MySQL, and PHP) setup…LOL, how fitting, <Linux users applaud>! Once the software components were installed and configured, I copied all my WordPress files from the production server. Finally I created the WordPress database using a backup of my production database. I will post the trials and tribulations of this endeavor in a later post (it wasn’t without a few bumps let me tell you).

Now that I had a stable development environment (that looked exactly like it did on the web) I could now test any changes locally without impacting my live blog.

  1. Create a source code repository.

Next I set up a source code repository to version any changes made to my blog configuration from this point on. In my case I choose Microsoft Visual SourceSafe as my source control configuration management tool. There are many other packages out there that perform the same function (e.g. Tigris.org Subversion and MKS Source Integrity). If these tools are too complex you could even choose to version your changes manually (using the file system) but I recommend against it.

From there I determined which files and directories needed to be added to my source code repository. For WordPress, not all files in the htdocs directory need to be checked in (as they are never modified after the initial install).

The files that should be checked in are as follows:

htdocs

|____ .htaccess

|____ wp-config.php

|____ wp-content

|____ themes

|____”your theme directory - *.*”

You will also need to check in any files that you modified along the way (e.g. plug-ins or core WordPress files that were hacked). In my case I only modified my theme so I was finished.

That’s about it. From then on, any time you make a change to your theme be sure to check it out before you modify it and check it back in when you move it to your production server. Most tools allow you to add comments when you check in a file so be sure to add a meaningful comment. Comments really help when trying to determine what was changed between versions.

 

Additional activities

Database Backups
In addition to the steps above I suggest that you also take regular backups of your WordPress database. There are numerous plug-ins that automate database backups but you can always use a tool such as phpMyAdmin to perform backups manually. You may need to request special access from your hosting provider to access phpMyAdmin on your production server.

Misc. File Backups
You will also want to take regular backups of your wp-content/uploads directory. This directory contains all the files/images that you have uploaded over time and will be necessary if you ever need to restore your blog. I choose not to check these files into my source control repository because of the dynamic nature of the directory structure but you may want to do so in lieu of FTP backups.

Helpful Plug-ins
During this endeavor I also decided to develop a WordPress plug-in called TransferTweaks. This plug-in saves changes (made to the header, footer, and sidebar) in the WordPress database instead of the theme file itself. The plug-in will then insert your code in the appropriate part of the page every time a request is parsed. The advantage of this plug-in is that there is no need to reenter your changes when switching to a new theme. Your “tweaks” will always be available to the current theme via script. I am currently using this plug-in on four WordPress blogs and it has proved to be a huge time saver when changing themes!

Conclusion
Hopefully this article has encouraged you to invest some time ensuring your hard work is protected against any future “mishaps”. All of these techniques are not specific to WordPress and can be easily adapted to virtually any blogging platform with a little research. Finally, checking your code into a source control tool such as Microsoft Visual SourceSafe is not a necessity for properly backing up your WordPress blog. You can back up your blog with as little as a simple FTP client if you wish. There is bound to be something I missed along the way…so please let me know and I will add any details that I missed :)

Share: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • StumbleUpon
  • Technorati
  • YahooMyWeb
  • Bumpzee

Social Bookmarking & Blogging Chris Gray on 12 Jul 2007

What is reddit and how can I use it to promote and market my blog posts?

I don’t know about you, but with numerous social bookmarking sites popping up every day I find it pretty hard to keep up. You have sites like Digg, Del.icio.us, reddit, and StumbleUpon all competing for your attention. In hopes of alleviating some of the confusion I am going to take a look a the social bookmarking site reddit and show you how to use their service to promote and market your blog posts.

Overview

reddit is a news aggregation site very similar to Digg or Tweako. reddit is the brainchild of Steve Huffman and Alexis Ohanian who founded the site in 2005 (Wikipedia, 2007). reddit follows the same format as other news aggregation sites where the reader community promotes news stories to the “front page”. The long standing advantage of sites like reddit is the ability to drive large amounts of traffic in a short period of time. There are also disadvantages as well!

The reddit team describes their service:

reddit is a source for what’s new and popular on the web — personalized for
you. Your votes train a filter, to let reddit know what you liked and disliked,
because you’ll begin to be recommended links
filtered to your tastes. All of the content on reddit is submitted and voted on
by users like you.

reddit uses the notion of karma to rank your user account. The better quality content you submit the more karma you acquire. Karma does not seem to have any real impact on what you can and cannot do within the reddit realm though and seems to be more of a gimmick.

First Impressions

Having never used reddit before I headed over and signed up for an account. The registration process was a snap and did not require an email confirmation. From there I was presented with a “dashboard” where I could view/change my account information. Overall the site was clean and easy to navigate.

The reading format mimics that of Digg.

There are two main sections

  • The front page - chronological listing of the current “hot” topics/articles,
  • upcoming articles – contains all of the recently submitted articles

Submitting an Article

The area that you will be most interested in if you are planning on promoting your own content is the article submission area.

reddit submission process.

Again, this process is very similar to the Digg “Submit a new Link” process. You supply the URL to your post, a meaningful Title, and finally the category (subreddit) that you would like your article to appear in. Once you submit your article it gets placed in the queue where readers either vote it “up” or “down”. Again, the more votes “up” the article receives the closer the article comes to making an appearance on the front page. …And just like Google, the closer you are to the front page the more potential traffic you will receive.

Conclusion

Overall I liked reddit. While I didn’t have time to see if my submitted article actually generated any “good karma” I was pleased with the design and operation of the site. After reading a number of articles it does appear that reddit users are a little more forgiving than those on Digg…but I am sure there are still a number of haters on any news aggregation site. I plan on using reddit in the future to promote and market some of my “newsworthy” posts and plan to come back to this topic in a month or two to update you on my final impressions.

Admittedly this is an extremely high level overview of the reddit service. I suggest heading over to Steve Olson’s blog for his take on reddit. Steve breaks down the reddit demographic and shares his experience promoting his posts on reddit.


Note: Our own eMom at Home, Wendy Piersall has done it again!
This post is part of her Second “How To” Group Research Project focused on bloggers helping bloggers. Head on over to Wendy’s site when you have a chance, she has a wealth of information for both new and experienced blogtrepreneurs!

Share: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • StumbleUpon
  • Technorati
  • YahooMyWeb
  • Bumpzee

« Previous PageNext Page »