Web Development With Seo In Mind
When a business owner decides to bring their business to the web, generally the last thing that they think about is search engine optimization. They assume that whomever they hire to do their web design will put up a site and then submit it to the search engines and the traffic will magically pour in. Unfortunately it takes more than that to drive search engine traffic to your site, and even more unfortunately most developers don't program with SEO in mind, nor do they educate the client about the process involved in gaining traffic from search engines.
Whether it's carelessness or a lack of knowledge, or a combination of the two, this often leads to a client that several months down the road doesn't understand why their site doesn't get any traffic and isn't helping their business. A good designer will not only program with SEO in mind, but will also educate the client about the basic principles of SEO, whether they are the one who executes it or not.
Many times the clients I inherit have gone through this scenario and then face drastic on-site changes to get their site search engine friendly before we are even able to begin the arduous process of link building. Whether you are designing a site for yourself or for a client, following the simple steps below when programming will ultimately save the business time and money and result in a search engine friendly site that truly maximizes the online potential of the business.
Use proper tags for headings, bold text, italic text, and lists ? HTML has heading tags, bold tags, italic tags, and ordered and unordered lists for a reason and you should use them. Using CSS you can practically style them however you like, but actually using a heading tag for your headings, and bold tags for important text, will help allow search engines understand what text on a page is a heading or what is more important than the surrounding text. Simply applying a CSS style that makes text larger or bold doesn't do that.
Optimize your images ? search engine spiders can't read text within an image. Adding ALT text to your image tag helps, but ideally you should remove all wording from the image and style it using CSS, adding the remaining portion of the image as a background image to the text. Here is a side-by-side comparison (http://www.seo-playbook.com/image_example.php) of two images that look the same in your browser, but much different to a search engine spider.
Avoid canonical problems ? believe it or not, search engines can see http://yoursite.com, http://www.yoursite.com, and http://www.yoursite.com/index.html as three different pages. A simple solution is to use a 301 redirect to point all of your pages to their ?www? counterpart. You can also select the preferred domain that Google shows in the new Google Webmaster Tools console.
Get rid of Session IDs if you have a PHP site ? have you ever seen a PHPSESSID variable added to the end a URL on a PHP page (it looks something like PHPSESSID=34908908)? This happens because PHP will add a unique PHPSESSID to URLs within your site if cookies aren't available. This can be extremely problematic for your site's search engine ranking. Google and Yahoo will see a unique PHPSESSID in the URL every time they visit a page on your site, and in turn think that said page is a different page each time. At worst, this could be viewed as duplicate content and get your site banned, and at best it will reduce the perceived value of each page. One solution that I've used successfully is to utilize url_rewriter.tags.
Put CSS and JavaScript in external files ? nearly every site nowadays uses CSS and JavaScript for something. While both are great for enhancing user experience, neither will help your search engine ranking if left on your page. One of the factors that search engines consider when ranking your site is the percentage of code relevant to the search term. CSS and JavaScript can take up hundreds of lines of code, minimizing the importance of your text and in turn hurting your ranking. By putting them in separate files and simply including them in your page by reference, you can reduce hundreds of lines down to one and increase the amount of code in the file that is relevant content.
Minimize the use of tables in layouts ? the debate about whether or not tables should be used in site design has been going on for years and there's no end in site. I fall somewhere in the middle ? there are certain circumstances (like organizing tabular data) where I think tables still make the most sense, but I also appreciate the SEO benefits of using CSS layouts. CSS layouts drastically reduce the amount of code in your site that isn't content that the user sees. Just like moving CSS and JavaScript to an external file, the less on-page code that isn't content, the better. Check out www.searchenginefriendlylayouts.com for some free example layouts.
Validate your site ? a site doesn't have to be perfectly coded to rank high in the search engines (there are many, many other factors), but valid HTML will help ensure that search engines and browsers alike will accurately see your page. Try using the official W3C Validator (http://validator.w3.org/) or install this handy Firefox extension (https://addons.mozilla.org/firefox/249/). Validating generally identifies areas of code that are redundant, unnecessary, or not accepted across all browsers. All of which will help make your site more search engine friendly.
About The Author
Adam McFarland owns iPrioritize (http://www.iPrioritize.com) - to-do lists that can be edited at any time from any place in the world. He also provides SEO consulting for small businesses looking for a cost-effective way to drive more traffic to their site. Visit http://www.SEO-Playbook.com for more information.
|