26 November 2009 9 Comments

Pretty Link’s Marketing and SEO Benefits

http://markbeljaars.com/wp-content/plugins/sociofluid/images/digg_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/reddit_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/stumbleupon_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/delicious_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/furl_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/technorati_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/facebook_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/yahoobuzz_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/mixx_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/twitter_48.png

There are many WordPress plugins that are nice to have, but very few are essential. This is where Pretty Link is different. If you are serious about tracking the performance of your adds, internal and external links or even downloads then Pretty Link is definitely worth looking at. According to the author, Pretty Link can…

Shrink, track and share any URL on the Internet from your WordPress website

…and what’s more, the shortened URL is prefixed with your website’s domain name. This blows tinyurl.com and bit.ly out of the water and has obvious SEO benefits to boot. Pretty Link was originally borne from the need to neaten up those ugly affiliate links that often scare off would-be purchasers. With Pretty Link, you can make a URL that looks like this http://www.shareasale.com/m-pr.cfm?merchantID=16526&userID=363159&productID=466062304 into one that looks like this http://beginnerchess.org/chesshouse-22.

Once a link has been “prettisized” (I’m sure this is not a real word), it can also be tracked as per the screenshot below. This allows you to tell how often your links are clicked and which links work better at attracting potential buyers than others. This is an extremely powerful tool for all Internet marketers. What’s more, Pretty Links with different names can point to the same actual link. This is useful for example if you want to track whether people are clicking on your left side banner add or the link in your article. With this sort of tracking information you can determine which add copy attracts the clicks and which products people are generally interested it. You can then adjust the add copy that doesn’t work and rotate out the products that nobody wants.

PrettyLink-Hits

Pretty Link couldn’t be simpler to use. Once installed and activated, expand the Pretty Link Settings group and select Add New. Put the messy URL in the Target URL section and a nice human readable slug (a tag that contains no spaces, but can contain a dash) in the Pretty Link text box. If your messy URL contains a question mark (a ? denotes the start of URL parameters) then you must ensure that you select the Standard Parameter Forwarding radio selection in the Link Options section. To use the new Pretty Link, you simply use the Pretty Link instead of the original link. For example, if you click on either of the two affiliate links given in the introduction you will notice that both take you to the same destination.

PrettyLink-AddNew

Another great feature of Pretty Link is that it allows you to update the target URL without modify the Pretty Link slug. This is useful if you want to modify your affiliate link without updating your article or add copy. This may be the case if you have found a cheaper or better product for example.

Pretty Link’s SEO benefits include an option to nofollow your Pretty Link which is useful if the linked URL is not optimized for your keyword. Another benefit is that you can chose the name of your Pretty Link slug, allowing you to add more keywords to your page in the form of links.

13 November 2009 8 Comments

10 Minute Search Engine Optimized Website

http://markbeljaars.com/wp-content/plugins/sociofluid/images/digg_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/reddit_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/stumbleupon_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/delicious_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/furl_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/technorati_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/facebook_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/yahoobuzz_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/mixx_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/twitter_48.png

The following guide is a comprehensive step-by-step procedure for configuring a SEO (Search Engine Optimization) friendly site starting from a default WordPress installation. I’ve assumed you have already installed WordPress and have logged in to the administrator dashboard. I’ve also assumed that you know how to install and configure new plugins. If not, see here.

All instructions were written for WordPress 2.8.6, but should work equally well for most versions. Before we start, you must have already researched your target key phrase, written a 300+ word keyword optimized article and chosen a domain name that includes your key phrase. Here’s an article on keyword research to get you started.

  1. Expand the Appearance menu and select Add New Themes. Browse all available themes and chose one that best represents your key phrase. The theme you chose should have a minimum set of features that will deem it SEO optimized. They include:

    • A navigation menu that appears on all pages. This ensures that if the search bot stumbles on any of your pages, there is a path to all other pages for it to follow.
    • A text title and title description that appears on the top of all pages. The title should be enclosed within H1 tags. Search engines can not use optical character recognition to retrieve your blog’s name, so ensure it is written in text.
    • A left sidebar. Studies show that people click ads that are displayed on the left more often than adds on the right.
  2. Edit the default WordPress settings:

    • Expand Settings and select General. Set the blog title to your key phrase. Set the Tagline to a keyword long tail or a phrase that includes one or more keywords. Ensure the E-mail address is filled in.
    • Expand Settings and select Permalinks. Set Common Settings to Custom Structure and in the entry field, type “/%postname%/” (without the quotes). This will give your post page the same name as your post title. As your post title should be keyword optimized, so too will your posr URL.
  3. Install and activate the Akismet plugin. Follow the instructions given in the Akismet Configuration page to acquire a WordPress.com API Key. Akismet will automatically remove spam comments. The last thing you want are spam comments reducing your keyword density.
  4. Install and activate the WP-Sticky plugin. WP-Sticky will allow you to stick your keyword optimized post to the top of your home page.
  5. Install and activate the Broken Link Checker plugin. It has been debated that Google will lower your authority if your site contains numerous broken links. It makes sense as sites with broken links are generally outdated or are of low quality. Use this plugin to periodically check for broken links within any page or post.
  6. Install and activate the Contact Form plugin. Follow the instructions to create a Contact page. People will not be comfortable purchasing goods from your site if there is no means to contact you should something go wrong.
  7. Install and activate the Easy Privacy Policy plugin. Follow the instructions to create a privacy policy page. Note that if you are intending to display Google ads, your site MUST include an accessible privacy policy to meet Goggles requirements.
  8. Install and activate the SEO No Duplicate plugin. Google awards the links for duplicate content to the site with the highest page ranking. Many debate that Google also punish websites that have many pages with the same content. This plugin will simply point all duplicate content on your site back to a single permalink.
  9. Install and activate the Social Bookmarks plugin. If your posts are worth sharing, you should encourage your readers to socially bookmark it. Doing so will assist in driving traffic to your site.
  10. Install and activate the Table of Contents Creator plugin. Follow the instructions to create a site map page. This plugin will help the search engine bots by exposing all pages within a single list.
  11. Install and activate the Ultimate Google Analytics plugin. Follow the instructions to acquire a Google Analytics account ID. This is beneficial as you will be able to track the number of users that visit yout site.
  12. Install and activate the Google XML Sitemaps plugin. Follow the instructions to obtain a Yahoo Application ID. Search engines use site maps to determine how often your pages change.
  13. Install and activate the All in One SEO Pack plugin. Take your time when filling in the plugin options. Ensure that:

    • The Home Title is your keyword phrase.
    • The Home Description is keyword optimized and designed to grab the attention of any would-be visitor. This description is displayed under your site’s listing in many search engines.
    • The Home Keywords should include your key phrase, the individual key words and any key word long tails.
    • Apply for webmaster accounts at google, yahoo and bing. Add your site to each account and copy all three authorization meta tags into the Additional Post Headers, Additional Page Headers and Additional Home Headers found in the SEO Pack options page.
  14. Create a new post and paste in your keyword optimized article. Ensure the name of your post is the key phrase. Create post tags and categories also matching your key phrase and key words. Fill in the SEO Pack options at the bottom of the page, ensuring that the Title is your key phrase, the Description is keyword optimized and the Keywords include your key phrase and all keywords. Set the Post Sticky Status to Sticky.
  15. Use one of the many Search Engine submission tools (such as this one) to submit your site to all the major search engines.

That’s it. You now have a 4 page website. The first site probably took way longer than 10 minutes, but consecutive sites will be quicker as you will already have the Akismet API Key, Yahoo Application ID, and webmaster accounts. Note that you may have to wait anywhere up to 1 month before your site is first indexed. To speed up the process, social bookmark your site to clipmarks, stumble upon, reddit, digg and so on. Using this technique, your site should be indexed in as little as 2 weeks. Don’t get carried away though. If you create 100′s of bookmarks before your site is indexed, Google will get suspicious and I have seen people have to wait 3 months or more before their site appears.

Also hold off on adding google adsense until 2 weeks after your site is indexed. Some argue that adding adsense too early will degrade your site’s rating.

There are also some other plugins you should consider adding. They are:

  1. Pretty Link. This plugin will let you track link hits and tidy long URLs.
  2. WP-phpMyAdmin. For the advanced user. This plugin allows direct access to the WordPress database.
  3. WP Super Cache. If your site has a large amount of traffic, WP Super Cache will speed up the user’s experience by caching the HTML result of a page rather than re-running the server side PHP script.
  4. WP-DBManager. Performs automated routine maintenance of the WordPress database and can also be configured to email a database backup at regular intervals.
  5. WordPress Backup. Emails a backup of the WordPress plugin, uploads and theme directories at regular intervals.

I hope this article has been of some use.

1 November 2009 2 Comments

A Cautionary Tale of Woe: The Bug That Got Away

http://markbeljaars.com/wp-content/plugins/sociofluid/images/digg_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/reddit_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/stumbleupon_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/delicious_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/furl_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/technorati_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/facebook_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/yahoobuzz_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/mixx_48.png http://markbeljaars.com/wp-content/plugins/sociofluid/images/twitter_48.png

Last week I released an updated version of my Table of Contents Creator plugin for WordPress. I pride myself in my coding, fault finding and testing abilities. That all came crashing down in one single night.

To cut a long story short, the new revision required a helper function to display post entries. The helper function was only called by one function and I therefore elected to include the helper function as a child of that function. This is common practise in many languages as it neatly packages all functions and their helpers in close proximity. The parent function by the way is called every time a page is displayed and terminates immediately if that page does not include the site map initiator tag.

Ok. Time passes. It is now 2am. The code is now ready to test. I know that the parent function exits immediately if it doesn’t find the initiator tag. This has previously worked, and I went nowhere near it, so it should continue to work. Right? I check the site map page, try out all the new and old options and prove that the code is working as intended. I quickly synchronize the SVN repository and rush off to bed to get some sleep before the sun comes up.

Next morning I decide to check a large site I know that uses my plugin. There’s no substitute for real world testing. Yeah, it all looks good. At that point I noticed a post in the site map that looked interesting. I clicked on the category link and was presented with the first post in the category and then a big nasty php error message. Mmm. I looked at another large site. Mmm. Maybe a coincidence. Lets look at one more. Oh no!

So what went wrong? Remember that child function? I’ve heard it said that kids can be evil and it turned out to be true in this case. If a blog page, category page, tag page or even a home page was displayed, multiple posts are shown on a single page. WordPress does this by pretending that each post is a mini-page and links all the mini-pages together to form one large page. This means that my parent function is called multiple times. Normally not an issue. But now as the function contains child functions, these child functions are created each time the parent function is called (even if they are not used). Therefore, when then second post is displayed, the page crashes with a duplicate function name error message. The nett result was that a small bug in a seemingly unrelated function caused several very large websites to go down.

The morale of the story: if you are a website administrator, make sure you run the full suite of tests after every plugin update, no matter how big or small that plugin may be.