WordPress offre unโampia scelta di possibilitร per quel che riguarda la struttura dei permalink da adottare sul proprio sito web o blog. ร sufficiente andare nella pagina Impostazioni -> Permalink per decidere quale struttura utilizzare. Ce ne sono alcune standard ma allโoccorrenza รจ possibile anche definirne una personalizzata.
A volte perรฒ puรฒ capitare di pentirsi della scelta fatta inizialmente e, a distanza di mesi o anni, decidere di voler cambiare la struttura dei permalink. Tale decisione non va perรฒ presa alla leggera, dato che modificare tutti gli URL relativi ai post pubblicati comporta dei gravi rischi.
Se infatti decidi di modificare la struttura dei permalink del tuo sito senza prendere alcun provvedimento, immediatamente tutti i link presenti sugli altri siti che puntano ai tuoi articoli potrebbero generare un errore 404 (clicca qui per saperne di piรน sugli errori 404). Questo perchรฉ al vecchio indirizzo (URL) non รจ piรน presente alcun contenuto. La stessa cosa vale naturalmente per le pagine indicizzate dai motori di ricerca, che porteranno a documenti non piรน esistenti.
Ho usato il condizionaleย perchรฉ, in molti casi, WordPress reindirizza automaticamente i vecchi URL a quelli nuovi. Ma questo dipende molto dal tipo della struttura utilizzata per i permalink del tuo sito.
Qualora WordPress non dovesse gestire correttamente tali reindirizzamenti, รจ necessario impostarli manualmente, ad esempio:
- creando le giuste regole allโinterno del file .htaccess nella directory principale del tuo sito (operazione sconsigliata se non sai quello che stai facendo)
- oppure utilizzare plugin come Redirection o Safe Redirect Manager per impostare delle regole di reindirizzamento dai vecchi ai nuovi URL. Tra questi due, io ti consiglio il secondo perchรฉ molto piรน leggero ed efficiente.
Utilizzando Redirection hai a disposizione un potente strumento per creare, gestire e monitorare i reindirizzamenti del tuo sito, utile non solamente in caso di modifiche alla struttura dei permalink di WordPress.
Supponiamo ad esempio di voler passare da una struttura di questo tipo:
/%year%/%monthnum%/%day%/%postname%/
nella quale sono indicati anno, mese e giorno di pubblicazione del contenuto, a una come questa:
/%postname%/
Se hai installato Redirection, devi creare un regola di questo tipo, avendo lโaccortezza di selezionare la casella Regex:
La casella Regex, permette di creare reindirizzamenti basati sulle espressioni regolari. Questo ti consente di evitare di dover scrivere singoli reindirizzamenti per ogni URL, ma di creare una regola per intercettare tutti quelli che seguono un particolare schema.
Usare un plugin per gestire i reindirizzamenti รจ molto comodo, ma va a incidere sulle prestazioni del sito, dato che tutti i reindirizzamenti vengono gestiti via PHP anzichรฉ direttamente dal web server.
Per questo motivo รจ piรน efficiente gestire i reindirizzamenti inserendo le regole direttamente nel file .htaccess che si trova nella directory principale del sito. Si tratta perรฒ di unโoperazione che richiede molta attenzione ed รจ sconsigliata per gli utenti alle prime armi.
Rimuovere /category/ dagli URL delle categorie del blog
Come impostazione predefinita, gli URL delle categorie di un blogย WordPress contengono la dicitura /category/. Questo a molte persone non piace e preferirebbero un URL piรน pulito.
Ad esempio, al posto di
www.dominio.com/category/web-marketing/
vorrebbero avere
www.dominio.com/web-marketing/
Se utilizzi il popolare plugin Yoast SEO, nella sezione SEO -> Aspetto della ricerca -> Tassonomie รจ presente unโopzione che ti permette di rimuovere tale frammento negli URL delle categorie.
Attivando questa opzione quindi, la scritta /category/ scomparirร dagli URL delle categorie.
Purtroppo perรฒ, tale impostazione va in conflitto e rappresenta un problema se utilizzi il plugin WPML per la gestione di un sito in piรน lingue. Attivando questa impostazione in Yoast SEO in un sito multilingue, le pagine delle categorie nella varie lingue generano un errore 404.
Se utilizzi WPML nel tuo sito multilingue e vuoi rimuovere la dicituraย /category/ dagli URL delle categorie, la soluzione che ti consiglio รจ quella di usare il pluginย No Category Base (WPML), pensato appunto per risolvere questo problema. Si tratta di un plugin che non richiede alcuna configurazione e genera anche i reindirizzamenti 301 dai vecchi URL delle categorie a quelli nuovi.
Impostazioni personalizzate della struttura permalink
Mettendo mano al codice PHP o utilizzando un plugin come Permalink Manager Lite (o Permalink Manager Pro) รจ possibile impostare una struttura personalizzata per i permalink dei molteplici contenuti presenti sul tuo sito WordPress. Questo plugin รจ utile ad esempio in presenza di Custom Post Type e Tassonomie Personalizzate.
Con Permalink Manager รจ possibile modificare lโintero permalink di un contenuto, non solo la parte finale (quella che viene chiamata slug).
La versione Pro di Permalink Manager consente di gestire anche tassonomie (standard e personalizzate) e permette anche di utilizzare i campi personalizzati allโinterno dei permalink.
Inoltre, sempre con Permalink Manager Pro รจ anche possibile rimuovere /prodotto/, /categoria-prodotto/, /tag-prodotto/ dagli URL generati da WooCommerce.
La versione gratuita del plugin inoltre supporta Yoast SEO, mentre quella a pagamento aggiunge il supporto anche per Rank Math, SEOPress, WPML, Polylang, Advanced Custom Fields, Toolset Types e Pods.
Permalink Manager consente anche di gestire i reindirizzamenti tra vecchi e nuovi URL, ma le sue funzionalitร piรน interessanti sono quelle che permettono la gestione estremamente personalizzata e avanzata di come un sito WordPress crea i permalink delle varie pagine.
Ottimo articolo!! ;) Grazie mille !!
Davvero utilissimo plugin. Retwitto ;)
Ciao,
interessante questo plugin; al momento non ne ho mai avuto bisogno, ma puรฒ tornare utile.
Nel mio blog come permalink metto anno/categoria/titolopost. Alcuni dicono che sia meglio mettere solamente il titolo del post e basta, perรฒ secono me per lo meno l’anno per capire se รจ un contenuto recente o datato male non fa.
Complimenti per il lbog, ha un layout molto gradevole!
Ciao
M
questo si che รจ un post di tutto rispetto, sei riuscito a far capire persino a me come fare!
Complimenti davvero, stupefacente e di una chiarezza senza precedenti!!
Grazie!
Ciao, sto leggendo alcuni post sull’argomento ma non ne sono uscito fuori. Nel senso che alcuni dicono che WP attuale dopo la 2.8 giร include il Redirect 301 automatico, mentre altri come te dicono che รจ necessario un plugin. In ogni modo un paio di mesi fa ho cambiato i permalink di un altro blog e ho avuto problemi al punto da dover estrarre il db e reinstallare WP. L’operazione รจ sicura? Avete fatto giร la prova con il plugin o senza? grazie
Che io sappia, senza un plugin come quello segnalato, se cambi la struttura dei permalink WordPress non ti fa il redirect 301 dai vecchi ai nuovi URL.
Scusa, me se la vecchia struttura รจ quella di default, in pratica “?p=N” , quale รจ la sintassi corrispondente da scrivere nel campo “Old ….”?
Ho cercato nella pagina Codex dei Permalinks ma mi riporta solo “%post_id% ” che non รจ lo stesso.
Grazie
Questo plugin non permette la migrazione dalla struttura di default di WordPress.