Designing your website to be search engine friendly - part 5

Martin Belam  by Martin Belam, 22 February 2006


So far I have examined three main techniques - standards complaint code using CSS for presentation, simple navigational structures to aid browsing and spidering, and providing context on every page to assist in retaining users once they have arrived via a search engine.

I want to just touch briefly on the arguments against using framesets on sites. When they were first introduced into HTML frames seemed an excellent way to provide consistent navigation across a site at a time when bandwidth was precious, and the constant reloading of common page elements was seen as wasteful. Certainly the majority of sites I worked upon in my early days on the internet consisted of a page split into four panes, with a global banner at the top, a global footer at the bottom, some left-hand navigation and a main content area, all established by using a frameset.

The problem with this for search engines is that, if indexed at all, each individual frame is indexed as a distinct and separate HTML document. This means that a user visiting these pages via a search engine result will not get the whole of the page, but simply the one frame which has been indexed.

Of course, there are tricks and techniques utilising JavaScript which you can use to force a browser to load an entire frameset if a page detects it is an orphan frame being displayed the main window, however, you cannot rely on this. At the BBC we always worked on the premise that around 10% of users would not have JavaScript enabled on their browser either through personal choice or corporate IT policy.

It is for those reasons that I would never now recommend the use of frames over the use of server-side techniques to incorporate easily maintainable global elements across a site, for example using Apache server-side include statements or PHP code to pull different files into a document that can be presented to browsers and search engines alike as one HTML document.

To recap then, optimising a site specifically for search engine friendliness no longer means compromising the visual appearance of the site for the benefit of machines. Standards compliant semantic XHTML code means you can deliver content targeted precisely at search engines without the 'tag soup' of presentational code getting in the way of indexing your message, Building a site with simple navigational structures that enables the easy indexing of a site, and providing context to every visitor on every page of every visit can make their user experience more satisfying, leading to repeat traffic.

Finally I'd like to stress that a great deal of effort is often spent on designing homepages, and in working out a strategy to provide 'landing' pages for content genres, product types, or specific information services. However, in an age of advanced full-text indexing every single page on your site could potentially be a landing page. And with the deep indexing of web content running to billions of pages, every single page view you receive could be the first time someone has visited your web site. If you make sure your designs are visually appealing, and at the same time appealing to search engines, you will have done your best to take advantage of that page view.

Keep up to date on my new blog