Los marcos y el posicionamiento web
Una web hecha en marcos es una de las peores pesadillas del SEO. Igual que una web hecha totalmente en Flash, las webs cuya estructura está compuesta por marcos son un tremendo problema para el posicionamiento (entre otras cuestiones) principalmente porque tienen una sola URL. Pueden tener miles de páginas pero siempre se ve en la barra de navegación la misma URL.
Fíjate en la web de esta empresa de cesped artificial en Valencia. Ves como tiene varias páginas pero la URL en la barra de navegación no cambia.
Enlazar con páginas internas es problemático
Si el usuario quiere enlazar con una página interna, tiene que hacer complejas maniobras para copiar la URL. Si consigue enlazar con la página interna, si visita esa URL no se verá la web (framset) sino solo el marco individual. Por ejemplo, si visitas la página http://www.poolgrass.es/productos.html verás que faltan la navegación y el footer. Cada componente de la estructura es una página web independiente. Estos componentes solo se pueden ver juntos dentro del frameset, y solo se muestra el frameset en la home de esa web.
Los buscadores no saben qué indexar
Google puede indexar las páginas que son frames, pero desde el punto de vista de un buscador, no está muy claro qué páginas debería indexar.
Los marcos pueden causar problemas a los motores de búsqueda debido a que no se corresponden con el modelo conceptual de la Web. En este modelo, una página muestra sólo una URL. Las páginas que utilizan marcos muestran varias URL (una para cada marco) en una única página.
¿Debería Google indexar las páginas que contienen los marcos (el frameset) o los mismos marcos? ¿Debería indexar la página que contiene solo la navegación? Si encontraras en Google esa página de productos sin navegación ni logotipo, no sabrías donde estabas ni podrías navegar a otras páginas. Estarías sin mapa en un callejón sin salida en una ciudad sin nombre.
Cómo posicionar una web hecha con marcos
Cuando me llegan clientes con una web así, les mando directamente al departamento de diseño para rehacer la web desde cero. Si el cliente no está dispuesto a rehacer la web, se puede hacer truquillos para posicionar la web y mejorar la usabilidad.
Primero, en la home (o donde esté el frameset) hay que usar la etiqueta <noframes>. Dentro de esta etiqueta introduces el contenido que aparece en la home por defecto. En el caso de poolgrass.es, se copiaría todo el código del body incluidas las etiquetas <body> y </body> de la página http://www.poolgrass.es/noticias.html y se pegaría entre las etiquetas <noframes> en la index.html. Luego para evitar problemas de contenido duplicado, en la página http://www.poolgrass.es/noticias.html se introduciría la etiqueta meta robots noindex. (También se puede excluir la página con robots.txt). Además, hay que copiar la navegación y el footer y pegarlo entre las etiquetas <body> en la home.
Hay que crear un sitemap con todas las páginas que se desean posicionar.
Hay que excluir mediante nofollow o robots.txt los marcos que no deben indexarse. Ej. la navegación y el footer.
Todas las página tienen que tener un título úncio. Además, deben tener por lo menos un enlace a la home y un enlace al sitemap.
Para evitar que los usuarios vean las páginas fuera del marco, hay que usar un poco de javascript. En cada página que tiene que verse en un marco, pega el siguiente código entre las etiquetas <head>, reemplazando “frameset.html” y “right” con los respectivos valores.
<script>
<!--
function frameMe(){
var frameset = "frameset.html"; //nombre del fichero que contiene el frameset.
var frame = "right"; //nombre del marco en el que se mostrará esta página.
page = new String(self.document.location);
var pos = page.lastIndexOf("/") + 1;
var file = page.substr(pos);
if(window.name != frame){
var s = frameset + "?" + file + "&" + frame;
top.location.replace(s);
}
return;
}
frameMe();
//-->
</script>
En la página que contiene el frameset (Ej. index.html), pega el siguiente código en el header:
<script>
<!--
function loadDoc(){
var a = location.search.split('&');
var page = a[0].substr(1);
var frame = a[1];
if(page && frame){
var s = “top.” + frame + “.location.replace(’” + page + “‘)”;
eval(s);
}
return;
}
//–>
</script>
Por último, pon un evento onload la etiqueta frameset. Por ejemplo:
<frameset rows="94,*,25" onLoad=”loadDoc()” frameborder=”no” border=”0″ framespacing=”0″>
¡No te pierdas el próximo artículo! Suscríbete via e-mail o RSS. ¡Gracias por tu visita!
Votar en Seoclon.



necesito conseguir enlaces de una manera rapida.. que buscando mi blog por nternet.. osea por google.. aparezca mas de dos resultados como es q pasa.. y que localize mi pagina como unica y no tenga millones de resultados de paginas que nada que ver si alguien sabe una manera facil de conseguir enlaces y promocionar mejor mi blog que me lo diga muchs graciasssssss