Quando mi trovo a lavorare sulla visibilità di un portale già realizzato (o in fase di realizzazione avanzata), la mia prima attività è quella di contattare la web agency scelta dal cliente per pianificare i passi da compiere per ottenere il meglio dalla piattaforma in uso.
Solitamente riscontro la massima disponibilità da parte degli sviluppatori, che apprezzano il fatto di parlare con un ex collega: in grado quindi di comprendere eventuali difficoltà nella realizzazione di certe modifiche e propenso a trovare il giusto compromesso tra le esigenze del search engine marketing e la situazione di fatto. D’altro canto anch’io sto notando nelle persone con cui mi confronto una sempre maggiore preparazione sui temi SEO, e questo è decisamente importante per consentire una collaborazione proficua.
In effetti oggi qualunque webmaster o sviluppatore WEB dovrebbe essere consapevole che nella progettazione di un sito le esigenze del search engine marketing impongono alcune attenzioni, ma non sempre le piattaforme CMS (content management system), sempre più utilizzate, si dimostrano all’altezza delle aspettative.
Nei prossimi paragrafi esamineremo quali siano i requisiti minimi che un CMS dovrebbe possedere per potersi definire pienamente search engine friendly
- Non deve consentire la generazione e di pagine uguali con url diversi: prestiamo attenzione alla duplicazione di contenuti interna al sito, evitiamo cioè il più possibile che lo stesso contenuto venga riproposto con url diversi. Per risultare dannoso il fenomeno deve essere consistente, ma purtroppo non è raro che per errori di programmazione, o di progettazione della struttura, si verifichino casi di questo tipo (pensiamo ad esempio a due diverse pagine di categoria di un blog che contengono esattamente gli stessi post).
- Non deve altresì consentire che lo stesso url possa visualizzare indifferentemente contenuti diversi: impossibile che accada??
Purtroppo invece è molto frequente, pensiamo ad esempio a tutti i casi in cui, in un sito multilingua, la lingua selezionata viene determinata soltanto attraverso cookie o sessioni. La lingua invece deve necessariamente essere sempre definita, in ogni pagina, da un parametro fisso nell’url es. /en/pagina.phpl o /it/pagina.php, in caso contrario gli spider reperiranno esclusivamente i contenuti nella lingua di default. - Deve dare la possibilità di applicare l’url rewriting in modo semplice: anche se la capacità degli spider di indicizzare le pagine dotate di query string è migliorata, l’url rewriting rimane estremamente importante per favorire il crawling del sito nella sua completezza. Inoltre è importante non mantenere in vita (leggi “raggiungibili”) url con query string duplicati di quelli appena riscritti, per gli approfondimenti su questi aspetti rinviamo ad un apposito articolo sull’argomento.
- Evitare i TITLE fotocopia: non c’è nulla di peggio di un sito con decine o addirittura centinaia di pagine dal title sempre uguale (e magari scarsi contenuti nel corpo della pagina), infatti questo elemento rimane ancora oggi uno dei fattori fondamentali per aiutare i motori a comprendere con esattezza le parole chiave di riferimento per una data pagina.
Il backend del CMS ideale deve consentire la personalizzazione di TITLE e meta-tag. - Avere a disposizione un sistema di templating flessibile che consenta al SEO di mettere mano alle pagine pagine senza dover toccare il codice lato-server (e poi litigare con gli sviluppatori
)
I CMS di ultima generazione presentino buona parte delle funzionalità descritte, ma si verificano situazioni in cui gli sviluppatori hanno le mani legate dall’utilizzo di una piattaforma che presenta caratteristiche negative (o addirittura dannose): è il caso frequente di alcuni software di vecchia generazione (molti dei CMS di classe “enterprise”, tipicamente in uso nella pubblica amministrazione, fanno parte di questa categoria) il cui uso è ormai consolidato da troppo tempo e la sostituzione dei quali rappresenterebbe un cambiamento traumatico per sviluppatori e azienda utilizzatrice.
Purtroppo alcuni di questi “dinosauri” resistono imperturbabili o gli sviluppatori che se ne occupano hanno iniziato ad avvicinarsi alle tematiche SEO senza troppa convinzione. Ricordo in modo particolare un CMS totalmente incapace di fornire link navigabili dagli spider e nel quale i contenuti delle varie pagine cambiavano senza che mutasse l’url della pagina: l’effetto era ottenuto con un “sapiente” combinazione di Javascript e utilizzo dei form per l’invio dei dati via POST…fatto sta che durante la navigazione si rimaneva sempre legati all’url della home page, pertanto non c’era verso che i contenuti del sito fossero visibili ai motori di ricerca.
In casi come questo c’è davvero poco da fare se non riprogettare il sito da zero o creare una sorta di mini-sito alternativo, pensato solo per essere dato in pasto agli spider…
Esistono poi casi, ancor più clamorosi, in cui il cliente vuole visibilità nei motori senza modificare in alcun modo il sito esistente, ma questi non meritano di essere approfonditi oltre
Conclusioni
Buona parte dei CMS moderni vanta la propria compatibilità con le caratteristiche richieste dai motori di rircerca: il SEO specialist non deve dare per scontato queste “autocertificazioni”, verificare puntualmente almeno la conformità con i punti citati in precedenza e saper consigliare i web developer sulle ulteriori modifiche da apportare e sugli errori da non commettere.





aprile 15th, 2008 alle 8:58
Fabio,
anche molte aziende attualmente “quotate” nel mercato dei cms utilizzano servlet Java, dove tutto avviene lato server, i dati sono passati in post e l’url rimane fisso alla home page con una query string che rappresenta il codice della sessione.
Purtroppo la maggior parte delle aziende ancora si preoccupano prima di fare il sito, scegliendo un’azienda di fiducia, e solo successivamente, quando il sito viene lanciato, pensano all’ottimizzazione per i motori, aspettandosi risultati in poco tempo a prescindere dalla base di partenza.
Speriamo che articoli come questo possano servire!
aprile 15th, 2008 alle 9:37
Ciao Fabio! Complimenti per il post interessante del quale seguirò il seguito. Puoi fare qualche nome sui cms usati da grandi aziende che sono spesso non seo-friendly e quelli che a tuo avvisono sono consigliabili? (intendo sempre Grazie
aprile 15th, 2008 alle 10:14
Ciao Giulio,
grazie per i complimenti, non so se ci sarà un seguito a questo post…l’ho lasciato intendere inavvertitamente da qualche parte?
Ad ogni modo mentre scrivevo l’articolo stavo cercando di ricordare il nome dei CMS di classe “enterprise”, specialmente quelli storici realizzati in Java, con cui ho avuto a che fare e che avevano grossi problemi.
Al momento mi sfuggono ma mi sto spremendo le meningi e sono fiducioso, uno di questi era sicuramente Oracle Portal, anche se non era il peggiore e dalle specifiche dell’ultimissima versione sembra abbiano inserito alcune caratteristiche richieste dai SEO.
In particolare vorrei ricordare il nome di quello che ad ogni click su di un link faceva il submit di un form, ma forse qui ci può aiutare Federico
Tra quelli consigliabili: sicuramente quelli realizzati in PHP, linguaggio da SEO per eccellenza, hanno sempre prestato una certa attenzione agli aspetti legati all’ottimizzazione: in particolare Drupal, Typo3, EzPublish.
Anche Wordpress ormai è per certi versi assimilabile ad un CMS e grazie a numerosi plugin è ricco di funzionalità SEO oriented.
Mambo/Joomla in passato aveva qualche problema con la gestione delle lingue ma ora sembra aver risolto.
aprile 16th, 2008 alle 14:34
Fabio,
penso che tu stia pensando a Coldfusion?
O forse Fatwire?
Ma io non sono un seo e potrei anche prendere tag html per css…
Nel mio commento mi stavo pensando in particolare ad un’applicazione web server side, pensata per la gestione di una rete intranet e poi utilizzata come cms. Ottimo esempio di come non si sappia spesso la differenza.
aprile 16th, 2008 alle 17:34
Coldfusion è analogo a PHP o ASP, quindi non ha colpe. Mentre Fatwire è effettivamente un CMS quindi se è quello che è stato usato per il sito che conosciamo entrambi…è tra quelli che hanno qualche problemino.
Oppure non è stato configurato bene da chi l’ha utilizzato
aprile 17th, 2008 alle 14:48
Molto ben scritto Fabio.
Quoto col sangue il primo punto:
>>Non deve consentire la generazione e di pagine uguali con url diversi: prestiamo attenzione alla duplicazione di contenuti interna al sito, evitiamo cioè il più possibile che lo stesso contenuto venga riproposto con url diversi…
Si puo’ vedere/integrare anche da un’altro lato: gestione corretta e precisa dei 404 e messa in sicurezza del sistema.
some-text_123.php non solo non deve dare lo stesso contenuto di
some-tezt_123.php , ma quest’ultima deve dare 404.
Link univoco a risorsa univoca e 404 a quello che non esiste:) oppure pregare il signore che competitori sgamati non si accorgano questa debolezza del sistema.
Un CMS senza questo tipo di attenzioni può essere facile preda di attacchi reverse SEO….
Stammi bene, ciao.
aprile 17th, 2008 alle 14:53
Ciao Piersante,
ben detto, sicuramente un punto da aggiungere, domani edito l’articolo
Grazie!
aprile 29th, 2008 alle 16:43
Grazie Fabio,
il tuo post è molto ben scritto (tanto che mi sono permesso di citarlo nel nostro blog).
A mio avviso si potrebbe solo aggiungere che il CMS dovrebbe gestire i menù in maniera “aperta” (navigabile, cioè dai motori di ricerca) e aggiornare i link all’interno del sito in maniera automatica (in modo da modificarli automaticamente quando vengono cambiati o riscritti tramite l’URL rewriting).
Queste due caratteristiche, come tu ben sai, favoriscono infatti la piena ed equilibrata indicizzazione del sito e contribuiscono a dare la massima rilevanza possibile alle pagine per le parole chiave eventualmente inserite negli URL.
Ciao ciao
aprile 29th, 2008 alle 16:59
Ciao Giampaolo e grazie a te.
In effetti i menu sono un punto critico di molti CMS, spesso infatti i collegamenti nelle sottocategorie “a tendina” sono realizzati con javascript (e quindi non navigabili dagli spider).
E anche una gestione automatica del cambiamento degli url (con relativi reindirizzamenti 301 nel caso di url già posizionati) è una funzionalità molto comoda.
Credo che a breve realizzerò un nuovo post sull’argomento riprendendo proprio gli utili contributi che tu e Piersante avete fornito
giugno 16th, 2008 alle 16:04
Sono uno sviluppatore e leggendo il tuo articolo ho ritrovato molte verità.
Proprio per questo ho sviluppato un cms seo friendly.
Complimenti per il blog
giugno 16th, 2008 alle 16:36
@svacant
grazie per i complimenti e per le conferme.
Darò con vero piacere un’occhiata al CMS che hai progettato