Talk tenuto al Web Marketing Festival 2015 a Rimini (#wmf15) nel quale ho presentato un case study sull'unione di 4 portali turistici realizzati con WordPress e 4 lingue su un un unico dominio e un'unica installazione di WordPress Multi Utente (Wordpress MU) Nello speech verranno mostrate le soluzioni tecniche e le best practices SEO utilizzate per portare a termine correttamente le migrazioni senza perdere traffico.
2. CHI SONO
• Programmo da più di 10 anni
• Dal 2009 lavoro con Wordpress ( ai tempi v2.7) e ho
iniziato ad occuparmi di SEO
• Dal 2011 al 2013 ho lavorato in GT Idea come SEO e
sviluppatore
• Da Gennaio 2014 C.E.O. di T.C. Informatica, web-agency
specializzata nel webmarketing turistico.
• Gestisco www.cattolica.info , un portale turistico su
Cattolica, online dal 2001 (e su Wordpress dal 2010)
2
3. DI COSA PARLERO’
• Perché ho deciso di migrare e unire 4 domini
• Come ho gestito l’unione utilizzando Wordpress
multisito e un plugin multilingua
• Cosa fare / tenere a mente quando si migrano i
domini
• Cosa ho imparato
3
5. OBIETTIVI
• Unire i domini per consolidare brand
• Agevolare lavoro di redazione / manutenzione
• Eliminazione S.P.O.F.
• Mantenere / migliorare posizionamento
• Evitare downtime durante la migrazione
• Migliorare performances (velocità) del sito
5
9. ARCHITETTURA SINGLE SERVER
PRO
• Gestione semplice
CONTRO
• Degrado Performances
• Costi
• SPOF multipli (single point of failure)
«componente che in caso di malfunzionamento o anomalia
causa disfunzione dell'intero sistema» Wikipedia
9
10. ARCHITETTURA MULTISERVER
PRO
• Architettura a microservizi* (un server x ogni funzionalità)
• Scalabilità
• Costi
• Business continuity / maggior resistenza a DDOS
• Ha portato alla realizzazione di un API
CONTRO
• Setup iniziale complesso
• *Ha richiesto la riscrittura di una codebase di migliaia di
righe di codice
10
12. NON PENSARE ESCLUSIVAMENTE ALLA SEO
Esigenze Del vostro business
• Dimensione Brand
• Brand locale / internazionale – Presenza fisica sul territorio
Esigenze economiche
• Budget per attività di marketing (e link building)
• Budget per gestione server /acquisto domini ecc.
• Budget ( e tempo) necessario / disponibile per effettuare le modifiche
Esigenze tecniche
• Situazione attuale (progetto nuovo o progetto già esistente?)
• Semplicità di gestione (principio K.I.S.S.)
• Scalabilità (se il traffico aumenta 10x,100x,1000x)
12
13. SOTTOCARTELLA
PRO
• Boost dal dominio principale
• Consolidamento link building / link building unica
• Aumento crawl budget *
CONTRO
• più difficile separare i domini su + server**
• Lo spider può avere difficoltà a posizionare il sito
nella lingua corretta ***
13
14. DOMINIO ccTLD / gTLD (DOMINI 2°LIVELLO)
PRO
• Valida alternativa all’utilizzo di un hosting «geografico»
• Google sembra avvantaggiare i ccTLD 1
CONTRO
• Link building parte da zero
• Richiede un budget maggiore
• cosa fare se dominio già registrato?
• requisiti registrazione ccTLD
ESEMPI
• Amazon.it
• Amazon.de
• Amazon.co.uk
14
15. SOTTODOMINI (DOMINI 3°LIVELLO)
PRO
• Può ereditare parte dell’autorevolezza del dominio padre
• Può essere hostato su un altro server / IP
CONTRO
• Simili a quelli dei ccTLD
• Richiedono una link building ad hoc
• Il boost che ricevono dal dominio padre è minimo ( e deriva
dall’architettura informativa)
ESEMPI
• it.wikipedia.org
• en.wikipedia.org
15
16. LA MIA SCELTA INIZIALE
16
www.
de.
en.
fr.
cattolica.info
18. WORDPRESS MULTISITO
• Permette di utilizzare sottodomini / sottocartelle
• Se si vogliono utilizzare TLD è richiesto Wordpress
Mu Domain Mapping
18
22. CRITERI UTILIZZATI PER LA SCELTA
• Facilità d’implementazione
• Implementazione delle best practices multilingua
• Performances ( e possibilità di scalare)
22
23. BEST PRACTICES SEO MULTILINGUA
• Hreflang o nell’<head> o come intestazione http
• Dichiarazione nell’attributo lang del tag <html> della
lingua (fonte)
• Sitemap differente per ogni sito
• Non mischiare le lingue all’interno della stessa pagina
• Raggruppare tutti i contenuti di una determinata
lingua
• Segnalazione tramite GWT del target geografico
23
25. WORDPRESS (STANDARD) + WPML
www.wpml.org
PRO
• Facilità d’uso
• Abbastanza completo
CONTRO
• Richiede l’installazione di altri plugin (forniti in bundle) per traduzione completa
• Non supporta il multisito «standard» (no un dominio per lingua)
• No sitemap separata
• Performances
– Tutte le traduzioni finiscono in un’unica tabella
– Adatto a siti piccoli
– La funzionalità «Rettifica ID per la funzionalità multilingua» quadruplica il numero di
queries
25
27. WPMU + MULTILINGUAL PRESS PRO
PRO
• Performances
• Supporto per 3°livelli e TLD
• WPMU nativo
CONTRO
• GUI meno user friendly rispetto a wpml
27
28. COMPARATIVA SOLUZ. WORDPRESS
Configurazione /sottocartella 3° livello TLD Best practices
SEO
Performances
WPMU sì sì sì con plugin ottime
WPML sì* sì* sì* sì
Pessime
(per siti trafficati
e/o molti
contenuti)
WPMU +
Multilingual
Press
sì sì sì sì ottime
*Implementazione proprietaria
28
29. COSA PUO’ ANDARE STORTO?
«Se qualcosa può andar male, lo farà.»
«Se ci sono due o più modi di fare una cosa, e uno di
questi modi può condurre a guasto o errore, allora
prima o poi esso si verificherà.»
[Legge di Murphy e corollari]
29
30. POTENZIALI PROBLEMI
• Unione contenuti
• Localizzazione delle stringhe del tema / plugin
• Incompatibilità plugin con multisite
• Cambio URL
• Errori 500
• 404
• Ranking / oscillazioni in serp
30
31. POTENZIALI PROBLEMI – UNIONE CONTENUTI
• L’import /export di Wordpress con files WXR non funziona bene su siti di
medie dimensioni (100+ pagine / posts)
• Le soluzioni free hanno delle limitazioni. Non tutte salvano i campi
personalizzati o i custom post type
• Procedure soggette a errori
• Timeout del server
• Limitazioni su dimensioni upload
• Gestione dei files multimediali
• Soluzioni
– Plugin commerciali
• Wp-types.com
– Tanta pazienza
31
32. POTENZIALI PROBLEMI – SERVER
Timeout del web server/balancer (vanno modificati tutti i software
coinvolti)
• Php time_limit
• Apache
• Nginx
Limitazioni su dimensioni upload
• Php
– upload_max_filesize / post_max_size
– estensione suhoshin
• Apache LimitRequestBody
• Nginx client_max_body_size
Gestione dei files multimediali
32
33. POTENZIALI PROBLEMI – CAMBIO URL
• Dump del db e trova e sostituisci con Notepad++
• Oppure https://wordpress.org/plugins/go-live-
update-urls
• Necessari Redirect 301
33
34. PROBLEMI – SITO IN MANUTENZIONE
• Se si rende necessario aggiornare il sito utilizzare
http 503 (status code Retry-After )
• Comunicazione per bot e utenti
• Plugin Wordpress Maintenance mode
• htaccess (askapache.com)
34
35. POTENZIALI PROBLEMI – COSE DA SAPERE
• Le impostazioni dei widget,plugin attivi, tema corrente ecc sono
salvate dentro wp_options
• Attenzione all’encoding del DB (è cambiato a partire dalla 4.2.2)
• Multilingual Press Pro ha un bug nella gestione delle
tassonomie causato da WP 4.2.2.
• WPMU dalla 3.5 ha cambiato modalità di gestione dei files
multimediali
• Prima di unire installazioni differenti portare WP e i plugins alla
stessa versione
• Se utilizzate Nginx vanno aggiunte RewriteRules anche in
nginx.conf
• Le migrazioni possono causare oscillazioni in serp. Il recupero
non è immediato
35
37. REDIRECT
• Utilizza 301 (Redirect Permanent)
• Se possibile utilizzare redirect 1:1
• Se le url sono migliaia e c’è la necessità di
cambiarle, parti da quelle con link in ingresso
• Per eliminare url utilizzare 410 (Gone)
37
38. REDIRECT .HTACCESS
• Inserire le Rewrite rule prima di #Begin Wordpress
38
RewriteCond %{HTTP_HOST} ^www.vecchiodominio.com$ [NC]
RewriteRule ^(.*)$ http://www.nuovodominio.com/$1 [L,R=301]
# BEGIN WordPress
#codice di default di WP
39. SOLUZIONI (THE WORDPRESS WAY)
• Redirection (per gestione Redirect e tracking 404)
• Google Analytics by Yoast
• 404.php con codice di analytics
39
40. TRACKING DEI 404 CON ANALITYCS
Aggiungere nel file 404.php del tema
• oppure Google Analytics by Yoast
40
<script>
var referrer = document.referrer; if (referrer === '') {
referrer = 'No Referrer'; }
ga('send', 'event', '404 Error', document.location.href,
referrer, 0, {'nonInteraction': true});
</script>
42. OPERAZIONI PRELIMINARI
NEL CASO IN CUI SI UTILIZZI UN SITO DI TEST:
• verifica meta robots
• Controllo robots.txt
IN OGNI CASO:
• 24h prima: modifica TTL (Time To Live) DNS
• Verifica Redirect
• Registrazione nuovo sito in GWT
• Procedura di cambio indirizzo per vecchio sito
42
45. OPERAZIONI POST MIGRAZIONE
• Cambio url Google Analytics
• Monitoring in GWT
• Analisi files di Log (ricerca di 4xx e 5xx)
• Correzione errori
• Correzione redirect (Broken link checker)
45
49. RISULTATI
V uniformare brand
V eliminazione SPOF
V agevolare lavoro di redazione / manutenzione
V Migliorare performances
X mantenere / migliorare posizionamento
49
51. Prima legge di Scott: Qualsiasi cosa vada male, avrà
probabilmente l'aria di andare benissimo.
Seconda legge di Scott: Quando si trova e si corregge un
errore, si vedrà che andava meglio prima.
Corollario:Quando si capisce che la correzione era
sbagliata, sarà troppo tardi per tornare indietro.
https://it.wikiquote.org/wiki/Legge_di_Murphy
51
PERCHE’ NON HA FUNZIONATO
52. PERCHE’ NON HA FUNZIONATO (SERIAMENTE)
• Google a distanza di 2 mesi non ha (ancora) capito chi
è il dominio principale
– Il sito IT è nell serp in lingua
– I siti in lingua hanno peggiorato i posizionamenti
• Google considera i 3° livelli come domini a se stanti
– visto il peggioramento in SERP non sembra esserci stato
trasferimento di domain autority
– l’operazione effettuata è paragonabile a un cambio di
dominio
52
54. SOTTOCARTELLA
PRO
• Boost dal dominio principale
• Consolidamento link building / link building unica
• Aumento crawl budget *
CONTRO
• I domini si possono separe su più server grazie ad un proxy
(Nginx, Ha Proxy)
• Lo spider non ha difficoltà a posizionare il sito nella lingua
corretta segnalando opportunamente i siti in Google Search
Consolle e inserendo i contenuti in lingua esclusivamente
nelle sottocartelle
54