The traditional wisdom when it comes to using 'frames' on pages that you wish to submit to the Search Engines is "DON'T!" Of course, the 'traditional wisdom' of many design gurus when they discuss the use of frames is also "DON'T!" Not being a traditionalist — in point of fact, I do fancy myself as quite a little rule-breaker — I decided to take another look at framesets, and ways that I might overcome their inherent limitations.
To better understand the problem, let's look at the objections: The 'main page' in a framed site is known as the 'frameset' and it is usually comprised of a few simple lines of code used to call and put the framed pages within their correct order of display. This means that there is very little to no content available for the Search Engine to use for determining your site's relevancy to a particular set of key words or phrases. This typically leaves the actual 'content' pages un-spidered, hurting the overall ranking of your site. That's the main issue that most SE Marketers have with frames.
Designers on the other hand tend to loathe framesets, often seeing them as a 'crutch' used by inept Webmasters who are otherwise unable to develop a useable navigational system. Many surfers have also shown a disdain for framed sites, but I suspect that their real sentiments can be easily clarified with the addition of 'poorly designed and implemented' framed sites.
Let me also touch briefly on the issue of cross-browser compatibility. In days gone by, designers were warned away from framesets because not all browsers could support them, or render them properly, even if they claimed support. Of course, we were told the same thing about not using 'jpegs' since most browsers couldn't display them, and if graphics were called for, 'gifs' were the best option (ASCII art notwithstanding). The times they are a changing though, and today almost every browser supports frames — and jpegs too! As a side note, I also suspect that these 'old school' designer's negative attitudes about frames stem from these old incompatibility issues.
Crafting A 'Work-Around'
Framesets are here to stay, however, and I for one find them to be effective tools for a wide number of reasons, and have used them in many previous sites. When I started to work on my newest site, the use of a frameset was a natural choice for me, as my business plan calls for the evolution of a range of disparate content sources under a single "umbrella" site. This is a perfect use for a frameset, and even more so for a 'hidden' frameset.
For those who don't know what a hidden frameset is, the answer is quite simple: a hidden frameset is one which 'appears' to be a single page, and is usually comprised of a 'zero height' top frame, with a 'full screen' bottom frame. You will know a hidden frameset when you see one, as even if you do not recognize that the page is a frameset, the URL will not change when you navigate your way throughout the site. This is perfect for my application (and many others).
Here's the basic code for a simple hidden frameset with the NOFRAMES tags included:
HTML HEAD
FRAMESET rows="0,*">
FRAME name="main" src="CONTENT URL" marginwidth="0" marginheight="0" scrolling="yes" noresize target="main">
NOFRAMES BODY>
INSERT 'SE' OPTIMIZED TEXT CONTENT HERE /P>
/BODY /NOFRAMES>
TITLE YOUR PAGE'S TITLE (USING KEYPHRASES) /TITLE /HEAD>
FRAME name="nav" src="blank.htm" marginwidth="0" marginheight="0" scrolling="no" noresize target="main">
/FRAMESET /HTML>
You no-doubt noticed the NOFRAMES tag in the example above. This is the 'tool' that will allow us to feed information to the Search Engines. Originally developed to display alternative text content to surfer's whose browsers did not support frames, it allows the savvy Webmaster a way to include enough relevant textual content on even the cleanest photo gallery page to receive a decent ranking from the Search Engines. Since we are dealing primarily with adult sites, it's safe to assume that our target market has a browser capable of displaying frames, and so the surfer will never likely see this textual content — but the SE's will! Hidden within this article are all the tools necessary for you to develop a very intriguing approach to site building.
There is another issue that we need to address when using framesets, and that is to offer redundant navigational options. The problem occurs when a page that is designed to work within a frameset is linked to directly from the Search Engine. This 'deep linking' allows surfers to bypass your 'home page' and your entire frameset as well. If you're not using a hidden frameset, but one designed as a navigational structure, your deep linked page will become 'orphaned' with no route out to the rest of your Web site. By adding a simple text-based 'nav bar' at the bottom of your pages, you will not only solve this problem, but provide additional avenues for SE spiders to crawl through.
An additional measure (although one that will work only on Java-enabled browsers) is to force-load a deep-linked page into its parent frameset. While this function in its normal application really has essentially the same effect as funneling all of your deep-linked SE traffic in to your home page or any other desired location, it can be very effectively used on those sites whose pages are all made up using individual hidden framesets. As a caution, this technique has the side-effect of disabling the browser's back button, since hitting it will only re-fire the JavaScript, putting the surfer into an endless loop between the same framed, and unframed pages. Some SE's, many link sites, and even the government may frown on this practice, so use this technique wisely:
SCRIPT language="JavaScript">
!-- LOAD FRAMESET
if (top == self) self.location.href = "INSERT FRAMESET FILENAME HERE";
// LOAD FRAMESET -->
/SCRIPT>
There in a nutshell is the basic (or is it advanced?) methodology for incorporating frames into pages that you wish to submit to the Search Engines. Hidden within this article are all the tools necessary for you to develop a very intriguing approach to site building, and it's one which I will be exploring in great depth — which is why I did not 'explain' it in great depth; I can't give all my secrets away!
In my next article, we'll look at 'Hallway' and 'Doorway' pages. Stay tuned!