Google no tiene ningún problema con los frames, son los frames los que tienen problemas con Google
Primero de todo, localicemos el problema:
Una página con frames consta (básicamente) de:
1.- Página que crea la estructura (index.htm)
2. Frame 1 (frame1.htm)
3. Frame 2 (frame2.htm).
Pueden haber más frames, obviamente, pero para esta explicación con eso bastará
Imagina que enviamos index.htm a Google:
Google llega a index.htm y encuentra un título y unos metatags (eso está bien), pero nada de texto, así que lista:
Titulo
http:URL
Luego entra en frame1.htm y, como aquí si hay texto, lista:
Título de frame1.htm (si está indicado)
Parte de texto relevante a la búsqueda
http:URL
Lo mismo ocurre con frame2.htm
Una vez listados (no de la forma que querríamos) llega gente a Google y busca nuestra página.
A menos que indiquen parte del título de index.htm (cosa poco probable), llegarán directamente a frame1.htm o a frame2.htm, cosa que les llevará a una web incompleta por donde no podrán navegar.
El 80% de los usuarios de Internet no pensarán que "ahí falta algo", pensarán "que web más incompleta".
¿Cómo solucionar estos problemas?
Para que se liste bien index.htm: usar <noframe>Texto descriptivo</noframes> despues de los framesets.
Para que se llegue a la página completa, pueden usarse diferentes métodos.
Lo mejor es un javascript que cargue el frameset con la página a la que se ha accedido.
Otro sistema es poner links a la portada (o a index.htm) en todos los frames.
Otra cosa que conviene tener en cuenta es que los robots indexan:
1. Los enlaces tipo <a href="pagina.htm">
2. Las imagenes tipo <img src="imagen.jpg">
3. La páginas referenciadas usando <frame src="pagina.htm">
Pero
NO indexan:
Los enlaces a ventanas Javascript referenciados con:
window.open('pagina.htm');
funcion('pagina.htm');