Site Building For SEO

Last time we were talking about keywords and their importance in seo. Now that you’ve chosen your keywords it’s time to build your site. Well maybe not just yet. I prefer to have content written before site building, but I’m going to talk about site building first. Partly because writing content will continue after your site is built and also because there are some things I’ll talk about here like structuring your site that can and probably should come before content writing.

Before getting into building your site for seo I want to remind you that you should always build your site for people first. It won’t matter how much traffic a search engine drives to your site if your site is unusable to the people who eventually get there. Fortunately building a usable site can also be good for seo.

Navigation

When it gets down to it the most important thing you’re doing when building a site for seo is making sure that search engine spiders can find all of your pages. If you want your pages to show up in searches it only makes sense to make sure they make it into the index. It happens to be pretty good for people ti find your pages as well. The main difference is that search engines prefer text only navigation. Visitors to your site will generally be able to use your drop down menu or image links. Search engines will stumble over them.

While search engines are getting better at reading JavaScript and Flash (they still don’t read images at all) you’re best bet is to make sure there are some text only links they can follow. That doesn’t mean you can’t use an image map, or a drop down menu, or even a Flash based navigation scheme. Your visitors may really like them. Just make sure you provide some navigation spiders really like too. An easy way to do this is to add a text only set of links at the bottom of your pages. As it turns out that bottom navigation can prove useful to your visitors if they scroll to read to the end of your page.

You don’t need to include links to every page of your site in your navigation, but you should provide links to each of the main sections of your site. You can add links to section pages on those main section pages. If your site is not very large then you should add links to all your pages on the home page. One link larger sites absolutely should include on the home page is to a sitemap.

Sitemaps

A sitemap is nothing more than a list of links to all or most of the pages on your site. Most of your visitors probably won’t use it though some will. Search engines will use it especially if you’ve provided a link to it on your home page. Having your site map within one click from your home page and having links to all your other pages on your sitemap means that every page on your site is reachable within 2 clicks. It will help search engines find all of your pages faster and will thus let them index your site faster. You do want your pages in the index don’t you?

Your sitemap doesn’t need to be anything elaborate. It really will be mostly for search spiders and spiders won’t care how it looks. No reason though that you can’t make it a little readable for those people who will check out the page. Organizing the links by section and maybe even writing a brief sentence about what a visitor will find in each section will make your sitemap more usable to people.

Once your pages grow beyond a certain number you may not want to have all of your links on a single page. 100 is probably about as many links as you’d want on one sitemap page. If your pages grow beyond that it’s ok to add a second sitemap page, which you can link to from the first page.

Site Structure

The way you structure your site can help some in optimizing your site as a whole. In my last post I mentioned letting your keywords follow the structure of your site as a keyword strategy and used the example of a site selling cameras. By organizing your pages around specific subtopics of your site your keywords within each section will naturally revolve around themes. You’ll be able to use more generic keywords on the main pages of each section and longer phrases on the deeper pages in each section.

Your digital camera section will very naturally continue to use and reinforce your ‘digital camera’ keyword throughout the section which can help improve the rank of your pages for the general section keyword. You’ll be able to more naturally include keywords in your links within the section and the idea of themes can show search engines (mainly Google) that your pages are relevant to each other. Building themes within your site can also help with the concept of having an authority site.

Naming Conventions

Building your site with this kind of structure will also help when combined with an seo friendly naming convention. While keyword rich urls probably don’t play a major role in where your site ranks they do play a role. By building your site sections around a common theme you can place all of the files in a subfolder that uses keywords in it’s name. All of your digital camera pages can reside in a subfolder of your site named digital-camera or digital-cameras. Always use a dash between words when naming folders and files since search engines have trouble parsing an underscore. If you use an underscore search engines will see the two words as one long word. The dash allows them to read each word separately which is what you want. Naming your folders with keywords is not about keyword stuffing. Too many keywords won’t help, but now all your digital camera pages will have that keyword phrase in their urls.

Just as with your folders give your files meaningful names that use keywords. That page on professional digital cameras can be called professional-digital-cameras.html or just professional.html if you don’t want to repeat the keywords from your folder. The url to the page becomes www.yourdomain.com/digital-cameras/professional-digital-cameras.html. No need to worry about getting a domain name with your keywords since you can get those keywords in on your folder and file names. Now you can pick a domain name that’s easier to remember.

Valid Code

While I wish it were so and there are still many good reasons to write valid code it’s not going to make a huge difference when it comes to seo. Search spiders can read poor code out of necessity since so many site are poorly coded. There’s probably a point where spiders will trip over your code if it’s bad enough, but spiders won’t exclude you from their index if all of your pages don’t validate. Still it’s a good idea to validate your pages and it’s not any more difficult to write good code than it is to write bad code. And while search engines don’t mind poor code at the moment there are many who think they should and it’s always possible that in time valid code will help.

The situation is similar with your choice in how you layout your site and whether you opt for a css layout or a table based layout. The search engines really won’t care much. They can read and crawl both types of layouts fine. There are some who believe that a css layout optimizes your pages since they typically use less code leading to a higher keyword density. I don’t believe this will matter since I think search engines are perfectly capable of separating code from content and looking at the density of your keywords as they apply to your content only in either type of layout. When search engines index your pages they store your content as one long text string stripped of the code around it.

Some would also say that css allows you to order your content in a way that lets you give keywords more prominence on your pages, by having them come first in your html. I’m not convinced of this, but there might be something to the argument since keyword prominence likely plays a part in seo and a css layout will let your organize your html any way you want while still keeping the same presentation.

While I’m still not convinced that a css layout will improve the ranking of your pages there are some good arguments for it when it comes to seo and it is always possible that search engines will come to see both css and valid code as something that gives a site a little more quality in the future. Even if they don’t there are still some very good reasons to use valid code and a css layout.

Static Or Dynamic URLs

Contrary to what many think search engines can read dynamic pages and index them fine. They may have trouble if you use too many parameters in your urls (3 is often quoted as a limit) and they generally don’t prefer to see a parameter like id=, but they can read dynamic pages. Still it’s probably a good idea to create search friendly urls. Turning your dynamic urls into search friendly urls is relatively easy using 301 redirects and I’ll just direct you to my post about them instead of covering the topic again here.

It’s also fine to use a .php, .asp, or any other dynamic extension for your pages instead of using .htm or .html. Search engines won’t care at all. The scripting language extensions may have gotten a bad rap in the past when search engines did get tripped up by dynamic urls, but that’s not the case today and it never was the extension itself that caused any problems. Guilty by associaition with all those parameters I suppose.

Robots.txt

You should always include a robots.txt file in your root directory. A robots.txt file will let search engine robots know which pages and sections of your site you don’t want them to index. Why wouldn’t you want them to index some of your pages? Well there are some files on your site there’s no reason a search engine needs to index. Files like external JavaScript don’t need to be indexed. Neither do temporary files you’re working on, but not yet ready to display. While we all want spiders to crawl our sites they do use up some bandwidth so let them know they don’t need to crawl certain parts of your site. Save some bandwidth on your hosting account and let the spiders get to the pages you want them to index a little faster. If you’ve never written a robots.txt file you can learn how at robotstxt.org

Custom Error Pages

You never want a page to fail to load when a search engine spider comes a crawling. That might let the spider believe your site isn’t a trustworthy one or worse yet that it no longer exists. Don’t worry spiders understand that problems do occur, but you’d rather they always get a page instead of an error. By setting up custom error pages you can make sure that even if an error does occur a page will still be displayed. You can also make sure that your custom pages contain your navigation so spiders can easily move on to another page on your site instead of being stopped in your tracks. And guess what? It’s also pretty good to give people that same navigation instead of giving them a reason to leave your site. Most hosting account will let you set up a variety of custom error pages through the control panel that comes with your account. I make mine to look just like any of my other pages with an apology for the error as my content and a suggestion to use the navigation to find a suitable page.

Remember when you build your site always think people first seo second. Fortunately much of what you do when building your site can benefit both. When it comes to seo the most important thing is to ensure spiders can crawl your site and index your pages. Build a text only navigation scheme with a link to a sitemap for search spiders. Beyond getting your pages indexed there are some things you can do in site building that can improve your optimization and ranking such as the way you structure your site and the naming convention you use for your files and folders.

Well we’ve built our site, but our pages are still looking pretty empty without any content. In Part IV we’ll talk about on page factors and seo and how what you do on your pages can improve your ranking in search results.

SEO Basics Tutorial

Part I: Introduction
Part II: Keyword Discovery And Keyword Selection
Part IV: On Page SEO
Part V: Link Building
Part VI: Tips For Getting Backlinks
Part VII: Summary And Thoughts

Download a free sample from my book, Design Fundamentals.

Leave a Reply

Your email address will not be published.

css.php