Andrea Cardinali - SEO on Site e WordPress Errori da Evitare
1. SEO ONSITE E WORDPRESS
ERRORI DA EVITARE
Andrea Cardinali
@andreacardinali
1
Andrea Cardinali - #wmf16 - @andreacardinali
2. ABOUT ME
(FULL STACK) DEVELOPER & SEO
PROGRAMMO DA PI DI 10 ANNI
LAVORO CON WORDPRESS DAL 2009
TITOLARE DI WEB AGENCY DAL 2014
2
Andrea Cardinali - #wmf16 - @andreacardinali
3. DI COSA PARLER
CARATTERISTICHE DI UN SITO "SEO FRIENDLY"
PROBLEMI "NATIVI" DI WORDPRESS
PROBLEMI SEO FREQUENTI
SOLUZIONI
3
Andrea Cardinali - #wmf16 - @andreacardinali
6. Andrea Cardinali
T.C. Informatica
VUOI VINCERE UNA
CONSULENZA GRATUITA* ?
TWEETA CON #wmf16
CITANDO @andreacardinali
Andrea Cardinali - #wmf16 - @andreacardinali
6
*Estrarr嘆 laccount vincitore dopo la fine dello speech
7. 7
DISCLAIMER:
PER LA REALIZZAZIONE DI QUESTA
PRESENTAZIONE SONO STATI
MALTRATTATI
(SITI REALIZZATI DA) CUGGINI
Andrea Cardinali - #wmf16 - @andreacardinali
16. PROBLEMI "NATIVI" DI WORDPRESS
TAG <TITLE> GENERATO IN AUTOMATICO DAL TITOLO DEL POST
TAG <TITLE> IDENTICO ALL<H1>
(non 竪 un vero errore ma una mancata opportunit di ottimizzare)
Il <META NAME="DESCRIPTION"> VUOTO
Il <META NAME="ROBOTS"> NON GESTIBILE
GENERA CONTENUTI DUPLICATI
GENERA UN NUMERO ELEVATO DI LINK INTERNI
DI DEFAULT GENERA REDIRECT 302 ( E I 302 NON PASSANO LINK JUICE)
16
Andrea Cardinali - #wmf16 - @andreacardinali
22. TABELLA DELLE RESPONSABILIT
22
WP TEMA PLUGIN WEBMASTER
TITLE E DESCRIPTION UNICI X X
URL "PARLANTI" X X
UTILIZZO CORRETTO <H1>
<H2>
X X
KEYWORDS E VARIAZIONI
PRESENTI NEI META E
NELLURL
X
SENZA CONTENUTI
DUPLICATI
X X
VELOCE X X X
ARCHITETTURA
INFORMATIVA SEMPLICE
X X
Andrea Cardinali - #wmf16 - @andreacardinali
23. TABELLA DELLE RESPONSABILIT
23
WP TEMA PLUGIN WEBMASTER
TITLE E DESCRIPTION UNICI X X
URL "PARLANTI" X X
UTILIZZO CORRETTO <H1>
<H2>
X X
KEYWORDS E VARIAZIONI
PRESENTI NEI META E
NELLURL
X
SENZA CONTENUTI
DUPLICATI
X X
VELOCE X X X
ARCHITETTURA
INFORMATIVA SEMPLICE
X X
Andrea Cardinali - #wmf16 - @andreacardinali
42. PAGINE ARCHIVIO BEST PRACTICES
DECIDI QUALI SONO GLI ARCHIVI CHE VUOI FAR COMPARIRE IN SERP
VUOI POSIZIONARE TAG, CATEGORIE O ENTRAMBI?
RENDI "UNICO" LARCHIVIO
MOSTRARE SOLO LEXCERPT DELLARTICOLO (NON LASCIARLO
GENERARE A WP, SCRIVILO)
AGGIUNGI UN CONTENUTO UNICO NELLA PRIMA PAGINA DELLARCHIVIO
E NASCONDILO NELLE SOTTOPAGINE
ELIMINA I DUPLICATI
AGGIUNGI IL NOINDEX,FOLLOW NELLE SOTTOPAGINE DEGLI
ARCHIVI
DISABILITA GLI ARCHIVI CHE NON UTILIZZI (ES. DATA O AUTORE)
58. LINKING INTERNO BEST PRACTICES
LIMITA LA PAGINAZIONE
UTILIZZA I BREADCRUMBS
CONSOLIDA I CONTENUTI (ARTICOLI CORNER STONE)
CREA MEN CONTESTUALI
PREFERISCI I LINK ALLINTERNO DEL CONTENUTO
ELIMINA I LINK INUTILI
LINK NELLE AREE STATICHE (SIDEBAR, FOOTER)
LINK NON CLICCATI / INUTILI (UTILIZZA GOOGLE ANALYTICS PER
IDENTIFICARLI)
RIMUOVI TAG CLOUD
UTILIZZA UNA SITEMAP HTML
SE SPOSTI I CONTENUTI UTILIZZA I REDIRECT 301
SE ELIMINI I CONTENUTI UTILIZZA LO STATUS CODE 410
58
Andrea Cardinali - #wmf16 - @andreacardinali
60. Andrea Cardinali
T.C. Informatica
I REDIRECT SONO
NECESSARI PER
MANTENERE IL
POSIZIONAMENTO
DELLA PAGINA
QUANDO SI CAMBIA URL
Andrea Cardinali - #wmf16 - @andreacardinali
60
#sapevatelo
61. Andrea Cardinali
T.C. Informatica
I REDIRECT
SONO NECESSARI
PER MANTENERE
IL POSIZIONAMENTO
DOPO UNA MIGRAZIONE
Andrea Cardinali - #wmf16 - @andreacardinali
61
#sapevatelo
63. Andrea Cardinali
T.C. Informatica
I REDIRECT 302 NON
PASSANO LINK JUICE*
Andrea Cardinali - #wmf16 - @andreacardinali
63
*Nella maggior parte dei casi.
#sapevatelo
65. Andrea Cardinali
T.C. Informatica
1 PLUGIN WP
2 - .HTACCESS
3 HTTPD.CONF
NGINX.CONF
Andrea Cardinali - #wmf16 - @andreacardinali
65
- performante
+ performante
DOVE METTERE I REDIRECTS
66. Andrea Cardinali
T.C. Informatica
I REDIRECT NEL
.HTACCESS VANNO
INSERITI PRIMA DI
#BEGIN WORDPRESS
Andrea Cardinali - #wmf16 - @andreacardinali
66
#sapevatelo
67. Andrea Cardinali
T.C. Informatica
Redirect 301 /vecchio-url/ http://www.nuovosito.it/vecchio-url
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Andrea Cardinali - #wmf16 - @andreacardinali
67
74. REINDIRIZZAMENTI BEST PRACTICES
I REINDIRIZZAMENTI VANNO MANTENUTI A TEMPO INDETERMINATO
(FINCH ESISTE IL SITO)
LE REGOLE VANNO INSERITE PRIMA DEL #BEGIN WordPress
PREFERIRE IL .HTACCESS AD UN PLUGIN
QUANDO POSSIBILE INSERIRE I REDIRECT NELLA SEZIONE
<VIRTUALHOST> (O NEL FILE .CONF DI NGINX)
LE URL PRESENTI NELLA SITEMAP NON DEVONO ESSERE DEI REDIRECT
SE NON POSSIBILE FARE UN REINDIRIZZAMENTO 1:1 CREARE IL
REDIRECT PER GLI URL CON LINK E/O CON BUONE POSIZIONI IN SERP
75. REDIRECTION
MONITORARE I 404
GESTIONE DEI 301/302 DA PANNELLO
PERMETTE DI CREARE UN .HTACCESS /NGINX.CONF CON TUTTI I
REINDIRIZZAMENTI
75
Andrea Cardinali - #wmf16 - @andreacardinali
79. Andrea Cardinali
T.C. Informatica
UNA 404 NON DEVE
RAPPRESENTARE LA FINE
DELLA SESSIONE DI
NAVIGAZIONE
Andrea Cardinali - #wmf16 - @andreacardinali
79
#sapevatelo
80. Andrea Cardinali
T.C. Informatica
GLI ERRORI 404 NON SI
POSSONO CORREGGERE,
SI DEVONO
CORREGGERE
Andrea Cardinali - #wmf16 - @andreacardinali
80
#sapevatelo
81. Andrea Cardinali
T.C. Informatica
SE ELIMINATE
VOLONTARIAMENTE
UNA PAGINA UTILIZZATE
IL 410 / GONE
Andrea Cardinali - #wmf16 - @andreacardinali
81
#sapevatelo
84. GESTIONE DEI 404 BEST PRACTICES
QUANDO POSSIBILE CORREGGIAMO IL LINK ALLA FONTE, IN CASO
CONTRARIO UTILIZZIAMO UN REDIRECT 301
POSSIAMO TRACCIARE I 404 CON GOOGLE ANALYTICS
POSSIAMO ANCHE IMPOSTARE UN ALERT EMAIL TRAMITE GA
LA PAGINA 404 PU ESSERE SFRUTTATA PER PERMETTERE ALLUTENTE DI
CONTINUARE LA NAVIGAZIONE.
BARRA DI RICERCA
ARTICOLI PI LETTI / PI RECENTI
GOOGLE SEARCH API: https://www.smashingmagazine.com/2014/08/a-better-404-page/
URL GUESSING (DA TESTARE): https://wordpress.org/plugins/404-redirected/
86. Andrea Cardinali
T.C. Informatica
SE IL ROBOTS.TXT
GENERA ERRORE 500
IL SITO VIENE
DEINDICIZZATO IN
BREVE TEMPO
Andrea Cardinali - #wmf16 - @andreacardinali
86
#sapevatelo
87. Andrea Cardinali
T.C. Informatica
SE IL SITO IN
MANUTENZIONE
UTILIZZA
503 + RETRY-AFTER
Andrea Cardinali - #wmf16 - @andreacardinali
87
#sapevatelo
89. STATUS CODE 5xx BEST PRACTICES
IL /ROBOTS.TXT GESTITO DA WORDPRESS. CREA UNA VERSIONE
STATICA DEL ROBOTS.TXT
QUANDO AGGIORNI/METTI IN MANUTENZIONE IL SITO UTILIZZA LO
STATUS CODE 503 + LHEADER RETRY AFTER OPPURE UN PLUGIN *
VERIFICA GLI ERRORI SU GOOGLE SEARCH CONSOLE
https://it.wordpress.org/plugins/wp-maintenance-mode/
90. RISPOSTE HTTP E STATUS CODE
STATUS
CODE
SIGNIFICATO CASO DUSO
304 NOT MODIFIED La risorsa non 竪 cambiata dallultimo accesso. Il
server confronta la data di ultima modifica della
risorsa con lheader If_Modified_Since inviato dal
client. Utile per il CACHING
301 REDIRECTED
PERMANENTLY
Cambio url.
Passa link juice (quasi tutta)
302 REDIRECT TEMPORARY Reindirizzamento temporaneo.
Non passa link juice ( dipende ***)
503 SERVICE UNAVAILABLE Manutenzione del server.
Da utilizzare insieme allHeader Retry-After
404 NOT FOUND Pagina inesistente.
Correggerlo e trasformarlo in un 301 o un 410
410 GONE Eliminazione volontaria e definitiva.
Lo spider smetter di richiedere la risorsa.
Andrea Cardinali - #wmf16 - @andreacardinali
90
92. Andrea Cardinali
T.C. Informatica
UNA PAGINA PESA IN
MEDIA 2.6 MB
FONTE: WEB.ARCHIVE.ORG TOP 1000 SITES GIUGNO 2016
92
Andrea Cardinali - #wmf16 - @andreacardinali
#sapevatelo
98. SEO VELOCIT FATTORE DI RANKING
Lo spider dedica ad ogni sito un tempo prefissato per scansionare ed
indicizzare le pagine (c.d. crawl budget).
A parit di tempo un sito veloce permette al crawler di scansionare pi湛
pagine
Unindicizzazione frequente e completa incide positivamente sul
posizionamento
Il tempo di caricamento della pagina 竪 un fattore di ranking
Un sito eccessivamente lento avr un rank peggiore rispetto ad un altro pi湛
veloce
Il crawl budget viene speso male
I siti lenti creano frustrazione nellutente e vengono abbandonati subito
Google utilizza la frequenza di ribalzo in serp come fattore di ranking
Google Adwords (che non centra con la SEO) tiene conto della velocit
nellassegnare il QUALITY SCORE
Il QS incide sul costo
98
Andrea Cardinali - #wmf16 - @andreacardinali
99. UTENTI ED ESPERIENZA DI NAVIGAZIONE
IL SUCCESSO DEL SITO E DEL BRAND DIPENDONO
DALLESPERIENZA DI NAVIGAZIONE VISSUTA DALLUTENTE
LE CONVERSIONI E IL BOUNCE RATE SONO INFLUENZATI
SIGNIFICATIVAMENTE DALLA UX
SE LA UX NEGATIVA, VOI ( O IL VOSTRO CLIENTE) STATE
PERDENDO SOLDI
99
Andrea Cardinali - #wmf16 - @andreacardinali
102. Andrea Cardinali
T.C. Informatica
IL SERVER INCIDE
TRA IL 10 E IL 20%
SUL TEMPO DI
CARICAMENTO
DELLA PAGINA*
Andrea Cardinali - #wmf16 - @andreacardinali
* Almeno che il tuo hosting non faccia veramente schifo e in quel caso cambia hosting
#sapevatelo
102
110. COSA COMPRENDE IL FRONTEND
FILE STATICI (CSS, JAVASCRIPT, FONTS)
QUANTIT DI CODICE HTML (NUMERO DI ELEMENTI DEL DOM)
TEMA E PLUGINS SONO I VERI RESPONSABILI
110
Andrea Cardinali - #wmf16 - @andreacardinali
111. 111
"OGNI VOLTA CHE QUALCUNO CREA UN SITO CON UN
VISUAL COMPOSER, DA QUALCHE PARTE NEL MONDO
UN WEB DESIGNER MUORE
@andreacardinali
"
Andrea Cardinali - #wmf16 - @andreacardinali
#sapevatelo
112. VELOCIZZARE IL SITO BACKEND
RIMUOVERE I PLUGINS INUTILI
COMPRESSIONE GZIP PER RISORSE STATICHE (CSS, JS, ECC)
ABILITARE KEEP-ALIVE
ABILITARE HEADERS PER IL CACHING
UTILIZZARE PHP 7 E MARIA DB 10.0
WP 竪 stato utilizzato come riferimento per lottimizzazione delle performances
di php 7
Aumento delle performances 200%/300%
NON SONO NECESSARI SERVER FISICI O SSD (DI SOLITO)
112
Andrea Cardinali - #wmf16 - @andreacardinali
113. VELOCIZZARE IL SITO - FRONTEND
RIMUOVERE I PLUGINS INUTILI
CSS NELLHEAD E JS PRIMA DI </BODY>
INCLUDERE I JS CON ATTRIBUTO ASYNC O DEFER
UTILIZZA I CSS E JS SOLO DOVE SERVONO (INCLUSIONE CONDIZIONALE)
MINIFICA HTML, CSS, JS
RIDURRE IL NUMERO DI RICHIESTE HTTP *
SPRITE CSS *
LAZY LOAD IMMAGINI
113
* Non pi湛 necessario se si utilizza HTTP/2.0 + SSL
Andrea Cardinali - #wmf16 - @andreacardinali
114. W3 TOTAL CACHE
GESTIONE CACHING DEI FILES
Expire Headers
GESTIONE CACHING DELLE PAGINE
Attenti alle funzionalit disponibili agli utenti loggati
CONSIGLIATO Enhanced Caching su Disco + Nginx
114
Andrea Cardinali - #wmf16 - @andreacardinali
115. 115
"W3TC NON RISOLVE I PROBLEMI DI UN
SITO LENTO, NE CURA SOLO I SINTOMI
@andreacardinali
"
Andrea Cardinali - #wmf16 - @andreacardinali
116. RICAPITOLANDO
WORDPRESS NECESSITA DI 2 PLUGINS: UNO PER LOTTIMIZZAZIONE
SEO E UNO PER LOTTIMIZZAZIONE DELLE PERFORMANCES
PER ELIMINARE I CONTENUTI DUPLICATI NECESSARIO RIVEDERE
LUTILIZZO DI TAG E CATEGORIE E MODIFICARE I FILES IL TEMA
I REDIRECT SONO FONDAMENTALI PER MANTENERE IL
POSIZIONAMENTO
IL LINKING INTERNO INCIDE SUL POSIZIONAMENTO
LA VELOCIT DEL SITO IMPORTANTE
LA VELOCIT DIPENDE QUASI ESCLUSIVAMENTE DAL FRONTEND
(TEMA E PLUGINS)
I TEMI ACQUISTATI SUI MARKET PLACE SONO BELLI MA LENTI
VISUAL COMPOSER SUCKS!
116
Andrea Cardinali - #wmf16 - @andreacardinali
117. SUL MASTER CLUB
POTETE VOTARE LINTERVENTO
E FARE DOMANDE
117
Andrea Cardinali - #wmf16 - @andreacardinali