pro / contro della navigazione hash dal punto di vista SEO


15

Sto lavorando a un'applicazione che implementa la navigazione basata su eventi di hashchange. Il contenuto viene principalmente caricato tramite chiamate ajax dopo le modifiche di hash (e visualizzato da iniezioni DOM).

Dal punto di vista SEO: i motori di ricerca sono in grado di indicizzare questo contenuto iniettato?
I motori di ricerca sono in grado di seguire i miei collegamenti hash (ex href = "# page = 1")?

In caso contrario, qualsiasi soluzione alternativa oltre ad avere contenuto statico nelle mie pagine solo per motivi SEO?

Grazie

Ho trovato alcuni thread simili su SO, ma non ho trovato risposte soddisfacenti, quindi perdonami di chiedere di nuovo.

jquery  ajax  seo 

Risposte:




2

i motori di ricerca sono in grado di indicizzare questo contenuto iniettato?

Risp. Sì e No.

No: se si inietta il contenuto semplicemente modificando l'hashtag , nessun crawler non sarà in grado di indicizzare il contenuto. Questi hashtag normali erano pensati per la stessa navigazione della pagina (molto prima dell'avvento di AJAX) e non per cambiare lo stato della pagina. Quindi, al fine di impedire più volte la reindicizzazione delle stesse pagine, i crawler sono stati intenzionalmente programmati per ignorare tutto dopo l'hashtag nell'URL.

Sì: hai due soluzioni alternative:

Per quanto riguarda la SEO, entrambe le soluzioni / soluzioni alternative funzionano ugualmente bene se implementate correttamente. Ma quale dei due è migliore a parte il SEO è un'altra discussione .


0

Per completare la risposta di legoscia ( /programming//a/11582278/1518423 ), è possibile utilizzare una libreria del browser senza testa sul lato server per fornire HTML statico al bot di Google.

Poiché fai un uso intensivo di Ajax sembra che ti piaccia javascript, quindi ecco un browser senza testa javascript utilizzabile da node.js: http://zombie.labnotes.org/

Spero che questo funzioni per te, divertiti!


0

Mentre ci sono motori di ricerca che supportano la ricerca per indicizzazione di contenuti ajax, gli URL tradizionali e i contenuti di pagine statiche sono ancora più affidabili per la visibilità dei motori di ricerca.

Quando è necessario ricaricare una parte significativa (di grandi dimensioni) di una pagina, di solito è auspicabile che il contenuto di Ajax possa essere sottoposto a scansione. In tali casi, tuttavia, un reindirizzamento sarebbe di solito un'alternativa praticabile (ma indesiderabile).

Suggerirei inizialmente di codificare la pagina in modo tale che reindirizzi quando devono essere ricaricate parti grandi / significative della pagina ( Passaggio 1 ). Significato, noi un'ancora con un url tradizionale <a href="/webmasters//page/1">(o qualcosa di simile) piuttosto che <a href="#page=1">.

Successivamente, scrivi javascript (jQuery) per intercettare il reindirizzamento e usa ajax per ricaricare la parte della pagina che cambierebbe se la pagina viene reindirizzata ( Passaggio 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>

Il primo passaggio si traduce in pagine Web con contenuto statico e URL tradizionali che funzionano anche senza javascript mentre il secondo passaggio rende dinamica la pagina Web (evita il contenuto statico).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.