Search the web for Search Engine Optimization (SEO) and you will find a plethora of web sites and people ready to sell you advice. Visit the many blogs and user groups and you find references to snake oil salesman and superman, there seems to be no end to the promises made and broken by some so called experts and web sites. Getting your web site to the first page of a search is an accomplishment worthy of praise. There are many things you can do on your own to improve your chances and I am by no means an SEO expert. My intent here is to relay my own experiences in getting SEO working on my web site. SEO is at best a black art and a project that is never finished.
Google, Bing and Ask do not make their crawl algorithms public as they are the secret sauce worthy of hefty protection, except imagine a secret sauce that changes constantly. The algorithms used are constantly adapting to those that find ways to beat them. That being said, what I am writing today could be completely irrelevant in a year, so for an in depth look at the what, why and how go to my links and look at the publication “The Beginner’s Guide to SEO”. My tale here is not an instructional guide on SEO but on just how to get to the beginning of the race.
My site is built on the Open Source Content Management System (CMS) called Joomla. I started with the Webmaster tools from Google and Bing (see my links), in particular the Google tools. Crawl errors had become the bane of my existence and my site had dozens. I was shocked and happy to find out that Google had already been crawling all over my site without me really trying. In Joomla I had SEO friendly URL’s turned on but I still had major problems that were causing issues with Google and Bing. Simple URL’s are best and all good intentions aside, I had enabled Multi Language support but it really was not appropriate for the local markets I am targeting. Disabling multilingual support changed my URL’s from ‘http://www.zypath.com/index.php/en/resources’ to ‘http://www.zypath.com/index.php/resources’ but now I had my second issue, why was there a ‘index.php’ sitting in the middle of each URL. Users were being redirected from ‘http://www.zypath.com’ and ‘http://zypath.com’ to ‘http://www.zypath.com/index.php’ and Bing did not like that at all, in fact Bing refused to index the site while Google didn’t seem to notice – go figure? Once again a default Joomla setting was the culprit and the issue was easily fixed.
These first issues though were not the source of my crawl errors though, there was a big white elephant sitting in the room as I blissfully went about my business. It turns out all of my Tutorials and Blog articles had an ID number in front of them and Google did not think that was very SEO friendly. My search to figure out why this was happening turned up a glaring problem in Joomla that I hope will get fixed. Joomla’s infinite flexibility comes at a price; a menu item must point to any content visible on the site otherwise it adds an ID to the URL. I really do not want to swell my menus up with hundreds of items so what do I do? I created a hidden menu (not set to any module position) that linked to each article of content, a pain and a work around but it worked. The ID’s were gone and Google and Bing were happy.
One final problem remains and this was URL Canonicalization, say that fast three times and you will sound like an old mafia boss… Canonicalization describes how a site can use slightly different URLs for the same page – for example people often leave off the ‘www’ when typing a web site URL. The separation can cause lost link value (according to Google – sounds more like a stock portfolio) and hurt rankings for your page, Google even describes this and how they attempt to determine the best page match for the URL. Fixing this required going into the web server and creating what is known as a 301 redirect or re-write rule so that all pages point to the same URL. Bing dada Boom I am on fire now, Bing finally starts responding…
Unfortunately we are still not done with the basics. We now have Google and Bing able to find and index our pages but we really are just starting with SEO optimization. We will review that in another Blog post where we will cover using some free online SEO optimization tools.
Now that we have Google and Bing crawling all over our site, we need to make sure they behave the way we want, in other words making sure we are SEO compliant. Now we get to see how well (or how poor if you’re a half glass full kind of person) our site will play in the big bad web. This requires some validation against known successful sites and for this we turn to a site called ‘SEOSiteCheckup’. Entering or web site URL rewards us with a grade and the details to back it up. Now I am normally an ‘A’ student so getting a ‘C’ my first time was a bit of a shocker. I thought I had covered all of the bases but that’s where I was surprised, I had missed several key areas and had several incomplete tasks. Time to smash some bugs.
A very important part of the SEO optimization is a ‘sitemap’, just don’t tell a guy that – keep driving honey I am sure it’s around the next corner. I am using an extension called Xmap which creates both a ‘HTML’ and ‘XML’ sitemap, and no it doesn’t wash the cat too… The ‘XML’ site map is critical for getting Google and Bing to index your pages. On the Webmaster pages for both Google and Bing there is a configuration area where you can input the location of your ‘XML’ sitemap, this will greatly speed up the indexing of your site. The ASK search engine is not as forgiving as Google or Bing and it requires a very specific ‘XML’ standard web site, I have to ASK why. Unfortunately for me it will not accept the sitemap Xmap generates as it is in a non-SEO friendly format. I will have to use external software to generate the sitemap Ask wants. The ‘HTML’ site map can be used as a page on your site and is very useful for people wanting to find something. Xmap also creates hyperlinks with the HTML so that the user can jump right to the page when it is clicked.
My original low grade was primarily due to how I had constructed my meta tags. These tags are not seen by users browsing your page, but are used by search engines to associate your web pages with keywords and phrases. The meta tag title and meta tag description are used to build a short description of your web site to put in search page results. My error was not due to omitting these tags, as many people do, but to not using tags that appear in my content. Someone figured out that they could just put all of the most popular keywords into their meta tags to improve their position on search results, now you know why the secret sauce keeps changing. Tags were being used that had nothing to do with the content of the web page, they were popular keywords that helped raise a websites ranking. Search engines responded to this by verifying that the content contained the title, description and keyword meta tags used, otherwise the ranking was penalized, do not collect $200, go directly to jail. I corrected this error by using a Joomla component, module and plugin called SEOBoss that actually highlighted my keywords listed in the meta tags throughout my page content, I could then verify that indeed my content contained the meta tags I was using. The SEOBoss component also scanned my website and brought together all of the meta tag settings for each page (yes you need to set meta tags for all of your pages, though the front page is the most important.).
Joomla and the template I had bought thankfully supplied several more features needed to complete SEO. Heading status, robots.txt, image tag expiry and favicon are automatically done by Joomla and or the template. Heading status is the use of h1 and h2 html tags to highlight important keywords and describing sub-topics of a page. The robots.txt file is a small text file that gives instructions to when robots (search engine crawlers) about how to behave on the site, such as telling the robots that certain parts of your server are off limits to some or all robots, danger Will Robinson. The use of image expiry tags tells a browser to cache the image for a specified date so that it does not keep re-fetching unchanged images from your server. Finally the ‘Favicon’ are small icons that appear in your browser’s URL navigation bar – so it’s important that it’s your logo or some other symbol related to your business as these are the symbols are used when visitors set a Bookmark or Favorite for a page, and you thought little fairies came along and put it there…
There is one last very important area, that is actually a relatively new part of your web sites search ranking and that is links. Not links you create to someone else, but the links from other sites to your content. The links also need to be to meaningful content. The old thinking was to create short 500 word or less blogs and lots of them. Now Google, wants links to meaningful content that is between 750 and 1500 words. The last word is about social metrics and their effect on rankings. Those seemly useless Facebook ‘Like’ button, Google +, Tweet and Linkedin inShare buttons really are important for content. They provide a way for non-web Yoda’s to show that they like your content without having to create a phreaking link to it. Take a bow you have now made it probable that your web site will show up in the first 10000 results, just kidding… let’s hope it’s the listed with in the first ten to twenty search results.