I recently hooked up with a marketing company in Ohio, really nice people and they do really nice work but I have been absolutely mortified at some of the code on their client’s sites. “Educating” this marketing company so they can explain the problems to their customers has been fairly easy, they are smart people, but educating their client’s programmers seems like it may be one of the most daunting challenges I have ever faced.
What I don’t understand, and maybe will never understand, is why most programmers do not use the information they have for a page in ways that would enhance the customer’s site and better the chances of great search engine rankings. Let me give you a fictional example:
Let’s say we have a national directory of specialty clothing shops that gives users listings by state, city, shop types, clothing brands and information about each shop in their own ‘details’ page.
A details ‘page’ is built pulling information about a specific topic and displayed on their page, let’s say we are showing details about a specialty clothing shop in Phoenix, Arizona … coming from a listing of shops in Arizona. Now the programmer has the name of the shop, their location, city, state and what they specialize in and possible the brand names they carry. It’s all there in the ‘detail page’ yet you look at the top of the browser and see nothing in the title that relates to this shop. You look at the source code and the meta tags are the same generic ones used throughout the site. My question is why?
The only answers I can come up with are 1) laziness and 2) lack of knowledge on how important information like this can be when used properly.
So instead of a title tag that says:
“Goth Clothing, Shoes and Accessories, Some Brand Name, Phoenix Arizona – Joe’s Goth Shop”
you end up with a title that says:
“Specialty Clothing Shops Details Page – some main site name”
Now maybe these programmers don’t understand how search engines work but when it comes to how people search for things they aught to know better because they probably search for things the exact same way. Web users have learned how to search and find things they want where they want them and more than likely a well done ‘page’ on a site could very well create an exact match to what someone is searching for.
Let’s take our detail page example from above and look at it from a customer’s search point of view.
A 15 year old kid in the Phoenix suburbs is looking for a store where he can get the latest goth fashions. He opens Google and types “goth clothing stores in Phoenix”. Now remember a well done details page on our imaginary directory would have the title tag “Goth Clothing, Shoes and Accessories, Some Brand Name, Phoenix Arizona – Joe’s Goth Shop”. Immediately we have a 3 word direct match between the customer search and the title tag of your page. Hopefully you would also have URLs that contained the same matches and a nice H1 tag that had the keywords. It’s really a no brainer when it comes to SEO yet is probably the biggest mistake I see out there today.
One other reason I can see programmers thinking this is a pain is because they start outputting the page’s code the second someone hits the page. This is a ‘junior programmer 101′ mistake yet I see people that have coded for 10 years do the same thing. What they don’t realize is ‘bundling’ the pages code into a variable and then outputting that variable one time at the end of the script opens up a world of opportunities. As long as you have the page’s code in that variable you can manipulate it any way you want, including creating dynamic, keyword rich titles, meta tags and other things.
It can be done in two ways though, either getting the data about the store before you start writing your HTML or by replacement later in your script. The first method works on smaller sites but more than not the heavy database work or file reading happens deep down in the code so I will focus on that method as I use it often.
Let me give a brief example, you non tech people might want to skip it because to you it probably looks like Martian sand script. Oh and for you tech people don’t beat me up because I skip tags in the example that are required for proper HTML outputting.
<?php
$output = "
<html>
<head>
<title><!--EDIT_MY_TITLE//--></title>
<meta name='description' content='<!--EDIT_DESC//-->' />
<meta name='keywords' content='<!--EDIT_KEYWORDS//-->' />
</head>
<body>
<!-- add in your pages details here from your database source or files //-->\n";
$output = str_replace('<!--EDIT_MY_TITLE//-->', {detailed info from db}, $output);
$output = str_replace('<!--EDIT_DESC//-->', {detailed info from db}, $output);
$output = str_replace('<!--EDIT_KEYWORDS//-->', {detailed info from db}, $output);
$output .= "
</body>
</html>\n";
echo $output;
Now I have done this example in PHP but every programming language in the world has the same functionality so there really are no excuses why a programmer can not build some sensible SEO into their scripts from day one. It only takes a few more minutes to do it right the first time and can literally save the client thousands of dollars in SEO and marketing work.
So to the programmers I say start thinking about your clients needs AFTER you have built the program by building them into the program from day one. To the site owners out there reading this take a look at your site and see if you have been the ‘victim’ of a lazy programmer because that little bit of extra time they should have spent doing it right could very well be costing you rankings and customers!
till next time,
Dave
Leave a Reply
You must be logged in to post a comment.
Comments (0)
Post Comment