Magento è una piattaforma e-Commerce basata su tecnologia open-source che consente il controllo su funzionalità, aspetto e contenuti in maniera molto flessibile. In questa guida vediamo nel dettaglio le principali best practices per migliorare la SEO di Magento.
Attraverso la guida completa all’ottimizzazione SEO di Magento scoprirai:
Nota bene: la guida si basa principalmente su Magento 2 essendo la versione più recente. Ciononostante, visto che in molti shop utilizzano ancora Magento 1, ho riportato anche i percorsi della versione 1.9.
La piattaforma è stata lanciata nel Marzo 2008 dalla Varien con licenza GPL, ma dopo un anno circa la software house ha pensato bene di rilasciare la versione Enterprise, a pagamento, pur mantenendo gratuita la versione Community.
Ad oggi Magento vanta diversi milioni di download, ad ha stabilito, a detta di molti developer, nuovi standard nella realizzazione di e-commerce.
Sul sito ufficiale di Magento è possibile confrontare costi e caratteristiche delle edizioni disponibili e i requisiti per l’installazione, consultare le guide utili tanto agli sviluppatori quanto ai negozianti e confrontarsi con altri sviluppatori attraverso il forum, in cui è presente anche una sezione in Italiano.
L’intuitivo pannello di controllo fornisce potenti strumenti di marketing, ottimizzazione per i motori di ricerca e gestione del catalogo che consentono la creazione di un negozio online adeguato alle proprie esigenze.
Seguono le principali caratteristiche di Magento suddivise per tipologia:
Dal punto di vista SEO Magento si presenta come una piattaforma piuttosto intuitiva da ottimizzare, ma come per tutti i CMS bisogna conoscere le principali best practices che permettono di avere una negozio online maggiormente predisposto al posizionamento su Google.
Cominciamo subito ad approfondire le impostazioni più importanti per rendere Magento SEO friendly.
Nota bene: nonostante tratterò configurazioni non particolarmente complesse, è preferibile fare un backup dei file che verranno editati e, se non sapete bene cosa state facendo, forse è meglio che affidate il lavoro ad un consulente SEO esperto.
Indice della checklist:
Una delle tecniche più importanti nell’ottimizzazione per i motori di ricerca è l’utilizzo di URL SEO friendly.
In questa sezione approfondiamo come ottimizzare gli URL attraverso:
Il primo passo verso l’ottimizzazione di Magento, riguarda proprio la riscrittura degli URL che consentirà di ottenere URL SEO friendly per il nostro shop, del tipo:
www.mionegozio.it/categoria/prodotto.html
invece di
www.mionegozio.it/catalog/product/view/id/01/category/01
Per attivare l’URL rewrite occorre:
Magento 1:
Magento 2:
Inoltre, per entrambe le versioni di Magento, nella scheda “Url Options” bisogna impostare su Yes (301 Moved Permanently) l’opzione “Auto-redirect to Base URL”.
In questo modo utilizziamo il redirect 301 invece del 302 per il Base URL (ad esempio per reindirizzare da https://mionegozio.it/store/ verso https://www.mionegozio.it/store/).
Un altro accorgimento per l’ottimizzazione degli URL, è la rimozione di index.php da tutte le URL.
Per far ciò è necessario editare il file .htaccess che si trova nella root dell’installazione di Magento, alla riga:
RewriteBase /magento/
e aggiungere “#” per commentare la riga
#RewriteBase /magento/
oppure, come riportato in altre guide SEO, sostituire /magento/ con /:
RewriteBase /
Per terminare l’ottimizzazione degli URL, sarà infine necessario impostare correttamente i suffissi: “/” per le categorie e “.html” per i prodotti e le pagine. Per impostare questo settaggio occorre:
Magento 1:
Magento 2:
Per ottimizzare l’header bisogna andare nelle seguenti schede:
Magento 1: andare in System > Configuration > Design > HTML Head;
Magento 2: andare in Content > Configuration > Design > Selezionare lo Store > HTML Head;
In queste schede possiamo quindi ottimizzare:
Favicon Icon: se si desidera utilizzare una favicon personalizzata, da qui è possibile caricare una immagine in formato .png .jpg .ico .gif .apng o .svg
Default Page Title: il tag title di default che verrà utilizzato per le pagine senza un titolo personalizzato.
Page Title Prefix: prefisso che può essere aggiunto al titolo di default. E’ consigliabile non compilarlo.
Page Title Suffix: suffisso che può essere aggiunto al titolo di default. E’ consigliabile compilarlo con il Brand del vostro shop.
Default Description: il meta tag description di default che verrà utilizzato per le pagine senza una meta description personalizzata.
Default Meta Keywords: il meta tag keywords di default. E’ consigliabile non compilarlo.
Scripts and Style Sheets: in questo campo è possibile inserire uno o più script, che verranno inseriti poco prima della chiusura del header, come ad esempio lo script di Google Analytics;
Display Demo Store Notice: serve a visualizzare un messaggio che informi gli utenti che il sito è in versione demo.
In Magento 2, sempre in questa scheda, cliccando sulla tab “Search Engine Robots”, sarà possibile impostare le direttive del per il meta tag robots alla voce “Default Robots”.
La duplicazione dei contenuti è stata sempre un grande nemico della SEO.
Quando ci sono più URL che presentano lo stesso contenuto, i motori di ricerca non sanno quale pagina mostrare nelle SERP e tendono a declassare tutte le pagine duplicate.
Questa circostanza, danneggia il posizionamento di un sito in modo grave e significativo. Vediamo dunque come affrontare:
È molto frequente che un prodotto sia abbinato a più categorie, provocando problemi di contenuti duplicati dal momento che URL differenti consentono di raggiungere la medesima pagina prodotto (per maggiori informazioni vedere penalizzazioni da Google Panda).
Se, ad esempio, ci troviamo a gestire una enoteca online ed abbiamo organizzato le categorie di Magento in modo da catalogare i prodotti per:
e lo stesso vino viene anche mostrato in home page come prodotto in offerta, sicuramente avremo 4 URL diversi che portano allo stesso prodotto:
Questo problema può essere superato disabilitando l’inserimento dei nomi delle categorie negli URL dei prodotti. Per farlo:
Magento 1:
Magento 2:
In questo modo avremo per tutti i prodotti URL del tipo mionegozio.it/prodotto.html, senza la categoria, risolvendo così questa potenziale problematica.
Il Rel Canonical è uno strumento fondamentale nella SEO per e-commerce, in quanto indica ai motori di ricerca quale tra le varie versioni di una pagina è quella da prendere in considerazione.
Una corretta implementazione di questo tag risolve molti problemi relativi alle duplicazioni sistemiche. Per attivarlo:
Magento 1:
Magento 2:
La sitemap xml è fondamentale per velocizzare l’indicizzazione delle schede prodotto, soprattutto per gli e-commerce che attingono dai feed dei grandi fornitori.
Per creare una sitemap in formato XML la procedura su Magento 1 differisce notevolmente da Magento 2.
Per generare una sitemap xml in Magento 1, dal menu “Catalog” basta andare alla pagina “Google Sitemap”, cliccare su “Add Sitemap” e compilare i campi:
Subito dopo bisogna cliccare su Save & Generate per creare il file della sitemap.
L’ultimo passaggio consiste nel far sì che la sitemap xml si aggiorni automaticamente. A tal fine:
Dopo questi due passaggi la sitemap xml si aggiornerà automaticamente, ma ricorda di impostare i permessi del file a “777” per consentire la riscrittura automatica.
Per generare una sitemap xml in Magento 2 bisogna:
1) Andare in in Stores > Configuration > Catalog > XML Sitemap.
2) Facoltativamente configurare la frequenza e la priorità degli aggiornamenti dei contenuti nella sezioni Categories Options, Products Options e CMS Pages Options.
3) Configurare le impostazioni di generazione impostando il Enabled nel campo Yes, affinché la sitemap xml si generi automaticamente.
4) Facoltativamente configurare i limiti del file Sitemap. Il limite di default di 50.000 URL è corretto e va bene nella maggior parte dei casi.
5) Infine nella sezione “Search Engine Submission Settings” imposta Enable Submission to Robots.txt su Yes se vuoi che venga inserito un riferimento alla sitemap xml nel file robots.txt.
Questo è tutto. Ora sai come generare una sitemap xml in Magento 2, che puoi inviare a Google Search Console e a Bing Webmaster Tools per migliorare la velocità di indicizzazione del tuo sito web.
Durante lo svolgimento di una campagna SEO la prima cosa da fare, ancora prima dell’ottimizzazione dei contenuti e dello sviluppo dei backlink, è accertarsi che il proprio sito sia stato concepito in modo user-friendly.
Il nostro sito deve essere facile da navigare e aiutare gli utenti a trovare tutte le informazioni a disposizione.
Questo migliorerà notevolmente il posizionamento sui motori di ricerca del nostro shop Magento. Vediamo dunque come migliorare l’usabilità con:
Per attivare una sitemap HTML generata automaticamente, in Magento 1 bisogna:
A differenza di Magento 1 in cui è possibile generare la sitemap HTML per impostazione predefinita (come abbiamo appena visto), Magento 2 invece non supporta questa funzionalità.
Pertanto dovrai affidarti a moduli di terze parti per fornire una mappa dettagliata del proprio sito.
Le breadcrumbs aiutano gli utenti a tenere traccia delle loro posizioni durante la navigazione del sito.
Gli utenti possono tornare rapidamente alla pagina precedente con un semplice clic su qualsiasi link tracciato nel percorso.
Mentre per le categorie e le pagine prodotto di norma sono abilitate di default, per aggiungere le breadcrumbs anche nella pagine CMS bisogna:
Magento 1:
Magento 2:
Uno dei punti deboli di Magento è, a mio parere, la velocità di navigazione delle pagine.
Questo aspetto incide su 2 fattori molto importanti:
Vediamo nel dettaglio, come migliorare le web performance tramite:
Per migliorare la percezione di velocità del nostro shop, una delle prime operazioni da effettuare riguarda l’attivazione della cache. Per farlo sia in Magento 1 che in Magento 2:
Nel caso in cui qualche tipo di cache sia invalidata, di solito si risolve cliccando su “Flush Magento Cache”.
Attivare la compressione Gzip potrebbe incrementare notevolmente la velocità di caricamento delle pagine di Magento.
Per attivarla è sufficiente rimuovere il commento alla riga del file .htaccess:
## enable resulting html compression php_flag zlib.output_compression on
Magento è una database application, questo significa che effettua svariate operazioni di accesso e lettura al database durante il suo utilizzo.
Molte di queste richieste di accesso e lettura si ripetono nel tempo, per cui per velocizzare queste operazioni è possibile abilitare la cache alle query di MySQL.
Per verificare se sul nostro database è attiva la cache, basta entrare su phpMyAdmin ed eseguire la query:
SHOW VARIABLES LIKE 'have_query_cache';
mentre per visualizzare la quantità di memoria dedicata alla cache, la query è:
SHOW VARIABLES LIKE 'query_cache_size';
I server database con 1Gb di RAM possono tranquillamente gestire una cache di 64Mb.
Per attivare, nel caso in cui sia disabilitata, e impostare la cache, è sufficiente eseguire la seguente query, che la imposta a 64Mb:
SET GLOBAL query_cache_size = 67108864;
Un problema SEO di chi gestisce negozi multilingua con Magento, è la generazione di URL duplicati dovuti all’aggiunta dei parametri “___store” e “___from_store” all’URL nel momento in cui passiamo da una store view all’altra.
Il parametro “___store” serve a Magento per sapere con esattezza quale store istanziare e si rende necessario nel momento in cui andiamo a definire manualmente l’URL al quale deve rispondere una determinata store view.
Per non renderlo più necessario e quindi evitare che venga aggiunto, la via più semplice è quella di utilizzare store code “parlanti” per le nostre store view (ad esempio “en” per l’inglese) ed indicare a Magento di aggiungere autonomamente lo store code all’URL.
Questa semplice configurazione la troviamo su:
Magento 1: System > Configuration > Web > Url Options;
Magento 2: Store > Configuration > General > Web > Url Options;
dove per entrambe le versioni di Magento bisogna settare su No l’opzione “Add Store Code to Urls” presente nella scheda “Url Options”.
Per rimuovere, invece, il parametro “___from_store”, più utile ai fini statistici che funzionali, occorre applicare una piccola modifica al template, aggiungendo il parametro “false” alla funzione che determina l’URL del contenuto in un’altra lingua.
Nel file:
/app/design/frontend/[mio package]/[mio tema]/template/page/switch/languages.phtml
modificate la chiamata:
< !--?php echo $_lang--->getCurrentUrl() ?>
con:
< !--?php echo $_lang--->getCurrentUrl(false) ?>
Queste semplici indicazioni sono fondamentali per predisporre lo store Magento al posizionamento SEO internazionale per siti multilingua.
Questa guida completa ha coperto tutti gli aspetti principali dell’ottimizzazione SEO di Magento.
Naturalmente, ogni store presenta le sue caratteristiche e di conseguenza necessita di ottimizzazioni specifiche studiate ad hoc attraverso un SEO audit per ottenere i migliori risultati di posizionamento.
Per un supporto professionale, non esitare a contattarmi.
Per ulteriori informazioni, per feedback o suggerimenti, non esitare ad utilizzare i commenti.
Ottieni l’accesso a guide, strategie e tutorial esclusivi che non condivido da nessun’altra parte.
Sottoscrivo la Privacy Policy di Valentino Mea. Sottoscrivendo acconsenti a ricevere informazioni e offerte riservate. Rispettiamo la tua privacy, i tuoi dati sono al sicuro e non saranno mai ceduti a terzi.
Vuoi sviluppare un business online di successo o vuoi essere formato anche tu ad alti livelli?
Copyright © 2013 - 2023 · Valentino Mea Srls rating 5.0/5 su 22 recensioni · C.F. / P.iva: 04373930611 · Privacy Policy · Cookie Policy · Sitemap · All rights reserved
Ciao Valentino, grazie per la guida, ottima completa e ben fatta, veramente una rarità per Magento, sopratutto in Italiano, riesce a dare risposte a molte domande, altrimenti reperibili in rete sparse e confuse. Gestisco da poco un sito in Magento 2 e questi consigli sono veramente utili.
Approfitto per chiederti un approfondimento e un chiarimento. Il no-follow e il rel-canonical scoraggiano i crawler dal scansionare e indicizzare i contenuti delle pagine, ma per farlo la pagina viene comunque visitata. Uno dei problemi che si può incontrare in Magento è proprio l’attività di Crawling, che consuma tantissime risorse, e anche la semplice visita della pagina può mettere in crisi il server per la quantità di pagine duplicate. Indagando su questo problema che purtroppo mi è capitato, ho trovato solo due strade, una è quella di cancellare gli url in search console, per google, l’altro è quello di aggiungere il no-follow sui link, per esempio della navigazione a livelli, cosa un po’ complessa perché bisogna fare hard-coding portando i moduli nel tema oppure comprare extension un po’ care. Cosa consigli su questo problema?
Grazie in anticipo
Buongiorno Marco,
confermo che ottimizzare tecnicamente Magento dal punto di vista SEO è complesso e, infatti, molte aziende mi assumono per spiegare ai loro tecnici come fare.
Venendo al tuo quesito: la prima soluzione (quella relativamente a GSC), non so dove tu l’abbia trovata, ma chi l’ha proposta palesemente non ha alcun tipo di competenze SEO.
La seconda proposta, invece, è intelligente e puoi prenderla in considerazione. Buon lavoro.
Buongiorno Valentino, complimenti per l’articolo, davvero una guida ben fatta. Ti scrivo perché ho da poco preso in mano un sito in Magento 1 e ancora le mie competenze con questo CMS non sono eccelse.
Ti scrivo perché con vari tools di scansioni, mi ritrovo un’infinità di pagine con “Title” e “Description” duplicate e sono tutte del tipo:
Secondo te è opportuno metterle in noindex? Se si, come faccio?
Grazie mille
Buongiorno Giovanni,
in bade agli URL di esempio che hai indicato, ritengo che si tratta di URL generati dalle modalità di ordinamento o filtraggio dei prodotti. Pertanto inserire una direttiva noindex in questa tipologia di pagine non ritengo sia la gestione corretta, bensì è preferibile gestire questa tipologia di URL con il rel canonical. Buon lavoro.
Buongiorno Valentino, Grazie mille per il supporto dedicatomi. Perfetto, seguirò il tuo consiglio. In magento, dove trovo (se posso chiedeterlo) la gestione dei canonical per url generate dalle modalità di ordinamento o filtraggio dei prodotti?
Grazie ancora
Buongiorno Giovanni,
se leggi bene la guida, ti renderai conto che vi è un intero paragrafo dedicato al rel canonical con tanto di immagini esplicative. Buon lavoro.