Pros / contras de la navegación hash desde la perspectiva SEO


15

Estoy trabajando en una aplicación que implementa la navegación basada en eventos hashchange. El contenido se carga principalmente a través de llamadas ajax después de cambios hash (y se muestra mediante inyecciones DOM).

Desde una perspectiva de SEO, ¿los motores de búsqueda pueden indexar este contenido inyectado?
¿Los motores de búsqueda pueden seguir mis enlaces hash (ex href = "# page = 1")?

Si no, ¿alguna solución alternativa además de tener contenido estático en mis páginas solo por razones de SEO?

Gracias

Encontré algunos hilos similares en SO, pero no encontré ninguna respuesta satisfactoria, así que perdóname por preguntar de nuevo.

jquery  ajax  seo 

Respuestas:




2

¿Los motores de búsqueda pueden indexar este contenido inyectado?

Ans - Sí y No.

No: si inyecta el contenido simplemente cambiando el hashtag , entonces el rastreador no podrá indexar el contenido. Estos hashtags normales estaban destinados a la misma navegación de página (mucho antes del advenimiento de AJAX) y no para cambiar el estado de la página. Entonces, para evitar la reindexación de las mismas páginas varias veces, los rastreadores fueron programados intencionalmente para ignorar todo después del hashtag en la url.

Sí: tienes dos soluciones:

En lo que respecta al SEO, tanto las soluciones / soluciones alternativas funcionan igual de bien si se implementan correctamente. Pero cuál de los dos es mejor aparte del SEO es otra discusión .


0

Para completar la respuesta de legoscia ( /programming//a/11582278/1518423 ), puede usar una biblioteca de navegador sin cabeza en el lado del servidor para proporcionar html estático al robot de Google.

Debido a que hace un uso intensivo de ajax, parece que le gusta JavaScript, por lo que aquí hay un navegador sin cabeza de JavaScript que se puede usar desde node.js: http://zombie.labnotes.org/

Espero que esto funcione para ti, ¡diviértete!


0

Si bien existen motores de búsqueda que admiten el rastreo de contenido ajax, las URL tradicionales y el contenido de páginas estáticas son aún más confiables para la visibilidad de los motores de búsqueda.

Cuando una parte significativa (grande) de una página necesita ser recargada, generalmente es deseable que el contenido de ajax sea rastreable. En tales casos, sin embargo, una redirección generalmente sería una alternativa viable (pero no deseable).

Sugeriría codificar inicialmente la página de modo que redirija cuando se recarguen partes grandes / significativas de la página ( Paso 1 ). Es decir, nosotros un ancla con una url tradicional <a href="/webmasters//page/1">(o algo similar) en lugar de <a href="#page=1">.

Después, escriba javascript (jQuery) para interceptar la redirección y use ajax para volver a cargar la parte de la página que cambiaría si la página se redirige ( Paso 2 ).

<a id="page1" href="/page/1">Page 1</a>
<script>
    $("#page1").click(function () {

        /*
         * Perform ajax here to replace a portion of the page.
         */

        return false;    // prevent redirection
    });
</script>

El primer paso da como resultado páginas web con contenido estático y URL tradicionales que funcionan incluso sin JavaScript, mientras que el segundo paso hace que la página sea dinámica (evita el contenido estático).

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.