WordPress 3.3 è uscito da qualche settimana introducendo molte novità (qui trovate le principali). Una tra le più importanti, di cui nessuno ha parlato, è la possibilità di utilizzare qualsiasi struttura di permalink senza calo di performance, come avveniva fino alla precedente versione 3.2.1.
In un precedente articolo sui permalink scritto sul blog di Andrea Pernici ho trattato in maniera abbastanza approfondita il funzionamento di WordPress e l’impatto sulle performance di una struttura permalink errata.
Ho deciso di riproporre i risultati di un nuovo test effettuato con l’ultima versione di WordPress, in quanto ci sono stati diversi miglioramenti (e sorprese).
RIEPILOGO
- Tutte le url di WordPress vengono salvate sotto forma di regole (regular expressions) nel database nella tabella wp_options nel campo rewrite_rules
- La struttura dei permalink utilizzata (selezionabile da Impostazioni -> Permalink) influisce sul numero di di regole generato, più è alto il numero e più tempo verrà impiegato da WordPress per restituire il risultato corretto (pagina, post, categoria ecc..)
- Il numero di regole varia sensibilmente in funzione del numero di pagine create (con versioni <3.3)
- Il numero di regole può anche essere influenzato dai plugins come WordPress SEO o No Category Base che rimuovendo il prefisso /category/ aggiungono 3 regole per ogni categoria.
IL PROBLEMA DELLE PRECEDENTI VERSIONI
Prima dell’introduzione di WordPress 3.3 l’utilizzo della struttura /%category%/%postname% era la peggiore dal punto di vista delle performance, in quanto aggiungeva numerose regole alla creazione di una nuova pagina o categoria.
LA NOVITA’
In WordPress 3.3 è stato completamente riscritto il codice relativo alla gestione dei permalink e tutti i problemi di performance (ticket #17177, #15915, #16687 e altri) risolti.
IL TEST
Come nel precedente test, ho provato diverse configurazioni di permalink, variando il numero di post,pagine,categorie e/o disattivando l’opzione di WordPress SEO per rimuovere il prefisso /%category%/.
I RISULTATI
Come nel precedente test, la struttura più performante è /%post_id%/ che però non è “parlante”. La novità sostanziale è invece quella di poter utilizzare la struttura /%category%/%postname%/ senza problemi.
Pur non rappresentando un fattore SEO decisivo, un url parlante o semantica, può sicuramente agevolare l’utente. Se volete sapere che cosa ne pensano gli esperti seo della struttura delle url, vi consiglio di dare un’occhiata ai fattori SEO 2011.
Se decidete di cambiare struttura dei permalink ai vostri siti WordPress, ricordatevi di impostare i redirect 301 dalle vecchie url alle nuove, oppure installate il plugin da me realizzato (https://www.andreacardinali.it/wordpress/cardy-redirect-plugin/) che gestisce in automatico i redirect.
E voi quale struttura di permalink utilizzate/utilizzerete?
Ciao! grazie per l’articolo!
Nel mio blog, utilizzo la struttura /%postname%/ decidendo cosi’ di eliminare la category dalla URL.
Questa decisione e’ stata presa seguendo un consiglio di Yoast, dove diceva che una volta wordpress dava problemi utilizzando solo il postname, ma ora non e’ piu’ cosi’. E’ anche vero che ho un sito piccolo, con solo 3 categorie, a cui onestamente non voglio dare molta importanza, specialmente nella URL.
Ciao, in effetti anche io consigliavo di non utilizzare la categoria nell’url prima dell’uscita di WordPress 3.3. Ora che le cose sono cambiate e il problema di performance risolto, penso che inizierò ad utilizzare nuovamente la categoria nell’url.
A me personalmente piace poter navigare tramite url (cancellando quindi parte dell’url per visualizzare gli articoli in una data categoria).
Naturalmente se il sito è ben organizzato non c’è bisogno di mettere mano alla struttura dei permalink
Buonasera Girogio,
ho installato transposh, un plugin che credo conoscerai per gestire le traduzioni.
Cercando di capire come installarlo al meglio ho trovato un articolo che parlava di configurare i permalink (a me sconosciuti) in un modo che ora non ricordo (credo %postname%.html o qualcosa di simile…perdonami l’ignoranza).
Comunuqe cosi ho fatto ma in questo modo il plugin mi funzionava con firefox ma non con explorer e chrome.
Ora ho provato a rimettere tutto come era impostato originariamente, ovvero con i permalink come predefinito, ma non mi apre più nessuna pagina.
Sai darmi una idea di come configurarli?
Grazie
fabio
Ciao Fabio,
il permalink non può creare problemi a livello di Browser quindi direi che il tuo problema è relativo a qualcos’altro.
Come prima cosa bisogna capire cosa intendi con “funziona con firefox ma non con explorer e chrome”. Se puoi fornisci più dettagli.
Saluti
Andrea
Ciao Andrea e grazie per la rapida risposta.
Il problema nasce dalla installazione di Transposh e dal fatto che non
riesco a farlo funzionare come dovrebbe.
E quindi nei vari tentativi di farlo girare ho provato un po’ tutto
anche a modificare queste impostazioni che pensavo creassero un problema
di URL.
Una volta installato il plugin ho cercato di fare le modifiche ad alcune
traduzioni che non mi piacevano od erano sbagliate e mi sono accorto che
alcune funzioni non vanno.
Una, la più importante, è che cliccando nella icona arancione che
consente l’apertura della finestrella di editing della traduzione non
succede nulla.
Ovvero non si apre la finestra. Ho provato a chiedere all’autore del
plugin ma non ho ancora ricevuto risposta.
L’altra, che forse a dir la verità è ancora più importante della
precedente, è che mentre su firefox che uso normalmente cliccando sulle
varie lingue il testo viene tradotto, anche se non sempre, su altri
browser e anche su altre macchina quando clicco sulle bandierine viene
fuori un errore di caricamento della pagina. A volte aggiornando la
pagina di nuovo si carica e traduce, ma non sempre.
Potrebbe anche dipendere da WP Super Cache?
https://www.yemanja.it se hai modo di dargli un occhiata ti sarei molto
grato.
Fabio
Ciao Fabio,
io ti consiglierei di utilizzare WPML. E’ un plugin che ormai è sufficientemente maturo e non ho mai riscontrato problemi simili a quello da te indicato. Ho guardato il sito, e a prima vista sembra che il problema dipenda dal plugin (Errore 330 (net::ERR_CONTENT_DECODING_FAILED): Errore sconosciuto.)
Questo errore non me lo da con FireFox mentre con altri browser, se poi aggiorno, si risolve ma appena clicco la bandierina per la traduzione mi da un altro errore.
Mi sarebbe piaciuto provarlo WPML visto che costa 79 dollari.
Grazie mille comunque, cercherò prima di sistemare transposh se riesco.
fabio
Ciao ho un problema con i permalink e non riesco a capire come risolverlo! Praticamente quando utilizzo la struttura personalizzata:
/%category%/%postname%
il logo della pagina scompare non appena accedo al blog! mentre se utilizzo la struttura:
%postname%
il logo riappare nella pagina blog e nei singoli articoli ma scompare quando ricerco gli articoli per categoria o tag. Qualche suggerimento?
https://www.andreasapienza.it/wordpress/category/blog
Così velocemente direi che dipende dal fatto che hai assegnato un percorso relativo all’immagine del logo.
Quindi in sostanza una cosa del tipo img src=”immagine.jpg” invece dovresti mettere img src=”https://………/immagine.jpg”
Ciao ,ho da poco creato un blog , vorrei ottimizzarlo anche per google news , ho scelto questo permalink /%post_id%/%category%/%postname%.html , me lo consigliate?
Ciao, io personalmente adotterei /%category%/%postname%-%post_id%.html, la mia scelta dipende esclusivamente dalla possibilità di poter navigare tramite url in questo modo.
Ciao Andrea, post interessantissimo, grazie per averlo realizzato.
Io personalmente utilizzo una struttura /%postname%.html semplice e minimale e nello snippet su google ho più parole in grassetto e il link è quasi tutto visualizzato, la desinenza html la uso perché personalmente mi piace di più vedere che tipo di file è la pagina che sto visualizzando (alcuni direbbero allora che dovrei usare .php).
L’utilizzo di category lo vedrei bene su blog multi categoria dove le categorie sono diverse decine.
Solo una piccola % di utenti naviga usando direttamente le url, tutti gli altri clicca sui link nella pagina, specie quelli meno esperti.
Ciao
Enea
Mi potete confemare questa domanda?! Salvatore Aranzulla usa %postname%-%post_id%.html ? grazie?!
Volevo dire rispondere grazie
Grazie per queste informazioni, ottimo articolo.