2012-01-04 10 views
7

Intro

So che questo è stato chiesto prima, ma le domande che ho trovato erano o specifiche o generali per provocare il tipo di risposta che stavo cercando. La migliore risposta possibile che io possa immaginare sarebbe un esempio usando la dorsale e la minima quantità di logica lato server possibile (nessuna lingua/struttura preferita lì).Qual è un buon esempio di strategia per raggiungere l'ottimizzazione SEO in un'applicazione javascript-heavy?

Problema

sto progettando un'applicazione JavaScript/Ajax-pesanti (per lo più-JSON backend spina dorsale +) che implementa una ricerca sfaccettato. Prendiamo ad esempio una ricerca sfaccettata di una semplice applicazione di negozio di scarpe che ti consente di filtrare colore, marca e tipo di scarpe e di ordinare per prezzo, dimensioni o quant'altro.

Si supponga di utilizzare backbone o un framework simile sul client e un servizio JSON come back-end.

Quale sarebbe una buona strategia (compromesso tra sforzo e risultato) per raggiungere la semplicità di utilizzo e un'interfaccia accattivante?

Risorse

Una soluzione che è venuto alla mia attenzione è Hijax riutilizzando modelli client-retro sul lato server, come descritto di seguito: http://duganchen.ca/single-page-web-app-architecture-done-right

risorse che ho mineralizzati senza conclusione finale

+2

Io suggerirei di utilizzare il design discusso nel collegamento "Single Page Web App Architecture Done Right" che hai postato: Rendi la tua applicazione web non Javascript prima, e quindi non avrai questo problema. – Ivan

risposta

3

Il punto generale a livello SEO cordialità: dovrebbe funzionare senza JavaScript.

E 'anche un bene per l'accessibilità, così si dovrebbe fare in questo modo, se l'utente non ha JavaScript abilitato (come il motore di ricerca lo fa), che funzionerà.

Se ha abilitato JavaScript, (come ogni essere umano sano di mente lo fa), che possa funzionare con tutte le funzionalità del nifty JavaScript che hai aggiunto.

Come regola l'usabilità generale di pollice: Se funziona, dovrebbe funzionare anche senza JavaScript!

1

La soluzione del primo collegamento sembra corretta. Il problema principale di una singola app è il rendering dei modelli su entrambi i lati, il back-end e il frontend. L'uso del modello Moustache o Chiusure di Google sarà una buona soluzione per questo.

La stessa soluzione utilizzata per google +, dove inizialmente verrà eseguito il rendering del lato sul server e verrà caricata una pagina html statica, dopo di che la pagina verrà visualizzata sul lato client ma con gli stessi modelli come in server.

1

Ricordo anche che i motori di ricerca seguire i link molto più spesso di quanto non (sempre?) Forme complete.

Questo problema di consentire i crawler di vedere il contenuto del db è chiamato il "web buio", "invisibile web", "deep web" o "web nascosto".Blog post

Così re la sua dichiarazione problema:

una ricerca sfaccettato di una semplice applicazione negozio di scarpe che consente di filtrare il colore, la marca e il tipo di scarpe e ordina per prezzo e dimensioni o qualsiasi altra cosa.

Io suggerirei di includere le ricerche tramite una gerarchia di collegamenti in Oltre alla ricerca attraverso forme con determinati campi.

Ad esempio, in un menu secondario sono inclusi tutti i diversi marchi come singoli collegamenti. Quindi ogni link dovrebbe portare a un elenco dei prodotti venduti da quella marca. Il trucco è sistemare le cose in modo che il collegamento a una scarpa individuale ti riconduca alla prima pagina (la ricca app di una pagina) ma mostra la scarpa specifica. - E la pagina dovrebbe implementare i consigli per la scansione di Google Ajax che fai riferimento nell'OP.

Problemi correlati