14.1 Wat zijn frames?
Een frame was een tijd lang een populair html-element waarmee een internetpagina kon worden construeerd uit meerdere html-pagina’s. Tegenwoordig zie je ze nog nauwelijks. Met het oog op de websites die nog uit frames bestaan, zal ik dit html-element toch gewoon behandelen.
Vaak zie je bijvoorbeeld een hoofdpagina bestaande uit een navigatiebalk (links) en een tekstpagina (rechts). Beide delen kunnen onafhankelijk van elkaar scrollen. De hoofdpagina heet dan bijvoorbeeld index.html, de navigatiebalk zit in de navigatie.html en de tekst in de main.html. De html-structuur ziet er dan als volgt uit:
<HTML>
<HEAD>
<TITLE>Voorbeeld van een frame</TITLE>
</HEAD>
<FRAMESET COLS="30%,70%">
<FRAME SRC="navigatie.html">
<FRAME SRC="main.html">
</FRAMESET>
<NOFRAMES>
Deze tekst wordt getoond als de browser geen frames ondersteunt.
</NOFRAMES>
</HTML>
14.2 Frames zijn lastige elementen
Frames zijn on-internet achtige elementen. In principe is het namelijk zo dat het internetadres van de pagina die op dat moment in uw browser zichtbaar is altijd in het ‘Adres’-invoerveld van de browser zichtbaar is (dat is dat veld waar u zelf ook uw adressen invoert als u naar een internetpagina wilt). Frames gooien dit principe helemaal door elkaar omdat het adresveld alleen de hoofdpagina (in dit voorbeeld de index.html) blijft tonen, terwijl feitelijk de navigatie.html en de main.html zichtbaar zijn. Ook als er op allerlei links wordt geklikt die zich binnen het frame openen, blijft het adresveld in de browser doodleuk op de index.html staan. U kunt dus niet meer zien waar u zit.
Zoals gezegd zijn deze elementen erg populair, ondanks hun tegendraadse werkwijze. Door dit laatste zijn een aantal type browsers (m.n. de erg oude) niet in staat dit element goed weer te geven. Daarom is er de mogelijkheid opgenomen om speciaal voor dat type browsers een alternatieve pagina te definiëren. Binnen de <NOFRAMES> en </NOFRAMES> tags kan die pagina worden opgebouwd. De meeste webbouwers vergeten dit deel in te vullen, of vullen daar één of ander nietszeggend zinnetje in als “uw browser ondersteunt geen frames” o.i.d. Omdat de meeste mensen inmiddels wel een actuele browser hebben, zullen weinig mensen hier tegenaan lopen. Maar nu komt het probleem…
14.3 Hoe frames te optimaliseren?
Een aantal zoekspiders, waaronder die van Google, kan geen frames lezen op een manier zoals we dat eigenlijk zouden willen. Google kan namelijk slechts enkelvoudige en geen samengestelde pagina’s (een frame dus) indexeren. Google indexeert iedere pagina afzonderlijk. In dit voorbeeld worden er dus drie pagina’s geïndexeerd: de index.html, de navigatie.html en de main.html. Het <NOFRAMES>-deel van de index.html wordt daarbij beschouwd als de inhoud van de index.html-pagina. De inhoud van de navigatie.html en de main.html worden afzonderlijk geïndexeerd en dus niet gebruikt bij het indexeren van de index.html! Yahoo, overigens, doet dit wel, maar Google dus niet.
Als over de <NOFRAMES>-tekst niet is nagedacht, zal de pagina dus niet of zeer slecht scoren in Google. Het devies is hiermee: als u gebruik maakt van frames, zorg er dan voor dat de <NOFRAMES> is geoptimaliseerd op uw zoekwoorden. (Bijna) niemand die deze tekst in de browser te zien krijgt, maar toch zal het moeten indien u wilt scoren binnen Google.
Denk overigens niet dat u nu vrij bent deze pagina vol te strooien met zoekwoorden, want dan wordt het al snel gezien als spam en zal de pagina vroeg of laat verdwijnen uit de zoekresultaten. U wordt nog steeds geacht een serieuze pagina te maken op basis van SEO strategieën zoals beschreven in deze handleiding.
Veel SEO-ers en website-bouwers raden het gebruik van frames af. Een aantal redenen worden in dit verband genoemd:
1. Het is lastig en onhandig om naast het bezoekers-deel ook een onzichtbaar deel (de noframes, het spider-deel) te onderhouden. Dit geeft extra werk en de aandacht daarvoor verslapt vaak snel. Aan de andere kant kan ook geconstateerd worden dat door het feit dat het bezoekers- en het spider-deel gescheiden zijn, het onderhoud overzichtelijker wordt: het bezoekers-deel wordt onderhouden door de websitebouwer en het spider-deel door de SEO.
2. Ook wordt wel gezegd dat zelfs als het noframes-deel goed is geoptimaliseerd, frames nooit écht goed kunnen scoren in zoekmachine-rankings.
3. Omdat zoekspiders de verwijzingen in de pagina (tenzij anders aangegeven in de meta-tags of in de robots.txt) volgen en ook weer indexeren leiden frames tot de vervelende situatie dat (in voorgaand voorbeeld) de navigatie.html en de main.html als losstaande pagina’s ook worden geïndexeerd. Dit betekent namelijk dat iemand deze pagina’s via een zoekmachine kan vinden, terwijl de framestructuur verdwenen is: er wordt dan óf alleen een navigatiebalk zonder tekst, óf alleen tekst zonder navigatiebalk getoond. In principe kan dit, bijvoorbeeld via javascript, wel weer worden opgelost door er voor te zorgen dat een frame in zijn geheel wordt opgebouwd als iemand slechts zo’n deelpagina probeert op te halen, maar het wordt allemaal wel wat ingewikkelder. Google heeft de laatste jaren overigens grote vorderingen gemaakt in het bij elkaar houden van de verschillede frame-onderdelen.
14.4 Richtlijn voor gebruik van frames
Als richtlijn voor het gebruik van frames het volgende: indien u een nieuwe website gaat bouwen, maak dan (tenzij het niet anders kan) geen gebruik van frames. Frames leiden tot rare resultaten in de zoekmachines (tekst zonder navigatiebalk, etc.) en scoren wellicht niet optimaal in zoekmachines. Frames zijn meestal ook helemaal niet nodig. Heeft u echter al een op frames gebaseerde site, en u wilt dit zo houden, optimaliseer dan wel het <noframes>-deel.
14.5 Flash en SEO
Flash is ook zo’n lastig element. Een flash-animatie is namelijk een soort film van afbeeldingen, dus niet te lezen door zoekmachines. Hoewel de technologie om ook flash te lezen behoorlijk in ontwikkeling is, moeten we er voorlopig van uitgaan dat dit onvoldoende het geval is.
Dit betekent dat we iets extra’s moeten doen om te zorgen dat een m.b.v. flash opgebouwde website toch iets van informatie bevat dat door zoekspiders kan worden gelezen. Als we dat namelijk niet doen, kunnen de spiders de inhoud van de site alleen bepalen aan de hand van de anchorteksten in de verwijzingen vanaf andere websites. Dit is nogal mager.
De beste manier, eigenlijk net als bij de hiervoor besproken frames, is het benutten van het feit dat niet alle browsers flash-animaties kunnen weergeven. Ook bepaalde browsersinstellingen kunnen de uitvoer van flash-animaties blokkeren. Google staat het daarom toe alternatieve html-code in de pagina op te nemen die getoond wordt als de flash-animatie niet werkt. Deze code wordt gewoon netjes gespiderd en gaat uw ranking daarmee verbeteren. Om te zorgen dat dit niet als spam wordt aangemerkt is het cruciaal dat u deze alternatieve html-tekst laat overeenkomen met de tekst zoals die in de flash-animatie te zien is. Een andere oplossing is dat u parallel aan de flash website ook een html website opzet. In “SEO voor webprofessionals” kunt u hier meer over lezen.
Vorige – 13. SEO tools | Volgende – 15. W3C en HTML5 |