Search Engines and Frames
Frames are less popular in web design today than they were a few years ago, but are still used in some sites. Search engines are getting better at spidering framed content, although some problems still occur. If you must use frames, be sure that you have a clean link in the framed content that will take the user to a point where the frame will be rebuilt; this insures that if the visitor loads the framed content from a search results page that he won't be "marooned" without navigation. It's also a good idea, if the site design allows it, to put a frame rebuilding script in the content frame; that will rebuild the navigation and other framed items if the content frame is loaded by itself.
The NOFRAMES tag
Any HTML page can include a frameset, but we are concerned with the way that search engines deal with framed sites and we will limit the discussion to cases where the function of the page is to create the frames structure - a frameset page. Search engines will index pages up to and including the frameset page, so let's not waste that indexing. The HTML specification includes the tag <NOFRAMES></NOFRAMES> to use with framed sites when frames are not being displayed. Browsers often allow frames to be turned off by the user and some browsers are unable to display frames. In these cases the HTML code contained within the noframes tags is displayed. However, it is very rare that a surfer actually sees the alternate content so design consideration can be largely ignored and search engine considerations can rule everything. Spiders index the content of the noframes tag.
A question that is sometimes asked is whether to put a noframes tag in every page or just on the frameset page. Put the noframes tag only in the frameset page. The place to put the tag is shown below.
Another frequently asked question is, "What should be put in the noframes tag"? The answer is simple. Anything and everything that would be put in a page's body section can be put in the noframes tag. The normal purpose of noframes is to provide alternate content for browsers that are not using frames, but the purpose here is to provide suitable content for spiders to evaluate and index. If it is the site's index page then it is probably best to include sufficient HTML content in the noframes tag to make the page search engine friendly. E.g. headings, alt text, link text and suitable printable text. Don't forget to include the usual meta tags in the head section.
There is no reason why the page should not be optimized for a particular search engine and the site submitted to all the major engines. It may do well in more engines than the optimization was designed for, and for the rest of the engines, doorway pages can be produced - which brings up a nice little bonus. Although redirecting is not spam as long as surfers arrive at the site or page that they expected to when clicking in a search engine's listings, some people may be reticent to use the technique in their doorways because of what they've heard. But if the doorway pages are duplicates of the site's index/frameset page, except that each doorway's noframes and head sections are optimized for different engines, there would be no redirections. There would only be alternate index pages.
Frame Rebuilding Script
if (top == self) self.location.replace('index.html');
The script can be placed anywhere in the head or body sections of the page. "index.html" is assumed to be the frameset page. It may need to be altered and the full url can be used. E.g. http://www.domain.com/.....
The script simply checks to see if the page is not in a frame. If it isn't, then the stated page is loaded. Note that if you want the content page to remain in view, you'll have to have a unique frameset to load for each content page.
Back to the Help File / Tutorial Directory
Visit our Web Marketing Glossary