Tutti gli articoli

Plugin WordPress: quelli che tengo e quelli che disinstallo subito

Plugin WordPress: quelli che tengo e quelli che disinstallo subito

Quando prendo in carico un sito fatto da qualcun altro, una delle prime cose che guardo è l'elenco dei componenti aggiuntivi installati. È una specie di radiografia: in due minuti capisco se il sito è stato costruito con un criterio oppure se è cresciuto per accumulo, aggiungendo un pezzo ogni volta che serviva qualcosa e senza mai togliere niente.

Il numero medio che trovo si aggira sulla venticinquina. In qualche caso ho superato la quarantina. Di quei venticinque, dopo aver capito cosa fa il sito, quelli davvero necessari sono quasi sempre tra i sei e i dieci. Il resto è roba installata per provare una cosa e mai rimossa, doppioni che fanno lo stesso lavoro di qualcos'altro, oppure strumenti abbandonati dai loro autori anni fa e rimasti lì a prendere polvere.

Prima di tutto voglio togliere di mezzo un luogo comune, perché lo sento ripetere spesso e non è vero: non è il numero il problema. Un sito con venti componenti scelti bene, aggiornati e mantenuti da autori seri sta benissimo. Un sito con cinque componenti di cui uno abbandonato da tre anni può essere molto più a rischio. Il criterio non è quanti, è quali e in che stato sono.

Quelli che tengo quasi sempre

Partiamo dal positivo, perché non voglio far passare l'idea che siano tutti un male. Il sistema su cui lavoro è fatto apposta per essere esteso, e senza estensioni non ci faresti niente. Le categorie che finiscono nei miei siti sono più o meno queste, ed è una lista corta.

  • Uno strumento per la gestione dei titoli e delle descrizioni nelle ricerche, perché la parte di base serve a tutti.
  • Un sistema di backup automatico serio, che salvi fuori dal server e non sullo stesso disco del sito.
  • Qualcosa per la sicurezza di base: limite ai tentativi di accesso, controllo dei file modificati.
  • Un sistema di cache, cioè di memorizzazione delle pagine già create, che sulla velocità fa la differenza più grossa di tutte.
  • Un gestore dei moduli di contatto affidabile, con salvataggio dei messaggi nel sito oltre all'invio per mail.
  • La gestione dei consensi per cookie e tracciamenti, che in Italia non è opzionale.
  • L'ottimizzazione automatica delle immagini, perché nessun cliente le ridimensiona prima di caricarle.

Su quello dei moduli aggiungo una precisazione che salva parecchi guai: il salvataggio dei messaggi dentro il sito, oltre all'invio per posta, è la cosa più utile della lista. Se un giorno l'invio si rompe, e capita, i messaggi restano comunque registrati e li puoi recuperare. Senza quella funzione, una mail che non parte è una richiesta di preventivo persa per sempre e nessuno se ne accorge.

Su quello delle immagini: sembra un dettaglio e invece è uno dei tre o quattro interventi che cambiano davvero la velocità di un sito aziendale. Il cliente carica la foto uscita dalla macchina fotografica, quattromila pixel di larghezza e sei megabyte di peso, e quella foto va a finire in una casella grande trecento pixel. Senza uno strumento che intervenga, il visitatore la scarica tutta intera. Su un sito con venti foto la differenza è tra due secondi e quindici.

Quelli che tolgo appena posso

Veniamo alle categorie che, quando le trovo, mi fanno alzare un sopracciglio. Non è che siano tutte dannose in assoluto, ma nella stragrande maggioranza dei casi fanno più danni che altro.

I primi sono i pacchetti che promettono di fare tutto: sicurezza, velocità, posizionamento, statistiche, backup, social, il caffè. Sono comodi all'apparenza perché ti risolvono dieci problemi con un'installazione sola, ma nella pratica fanno ogni cosa a metà, pesano tantissimo perché caricano tutti i loro pezzi anche quelli che non usi, e ti legano mani e piedi: il giorno che vuoi cambiare, devi smontare dieci funzioni insieme. Preferisco sempre strumenti che fanno una cosa sola e la fanno bene.

I secondi sono quelli che aggiungono elementi grafici alle pagine: raccolte di blocchi, caroselli, contatori animati, effetti. Se ne trovano due o tre installati insieme nello stesso sito, ognuno che carica il proprio bagaglio di codice su ogni pagina, anche su quelle dove non viene usato niente. Il costo in velocità è alto e il guadagno è quasi sempre estetico. Quando faccio pulizia, questa è la categoria che fa risparmiare più peso.

I terzi sono i doppioni, e li trovo praticamente sempre. Due sistemi di memorizzazione delle pagine attivi insieme, che litigano tra loro e producono comportamenti strani difficilissimi da diagnosticare. Due strumenti per i titoli nelle ricerche, con il risultato che sulle pagine finiscono informazioni duplicate. Due sistemi di sicurezza che si bloccano a vicenda. Il doppione non è solo inutile: è una delle cause più frequenti di guasti che sembrano inspiegabili.

I quarti sono quelli abbandonati. Qui non c'è discussione: se l'ultimo aggiornamento risale a due anni fa e l'autore non risponde più, quel componente va sostituito. Non perché smetta di funzionare, spesso continua a funzionare benissimo, ma perché se qualcuno scopre un difetto di sicurezza non lo sistemerà nessuno. È la porta da cui entra la maggior parte dei siti che finiscono compromessi.

Come decido, caso per caso

Quando guardo un componente che non conosco, mi faccio sempre la stessa sequenza di domande. È diventata quasi automatica e mi porta a una decisione in un paio di minuti.

  1. Questa funzione serve davvero al sito, o è rimasta da una prova di qualcuno?
  2. Quando è stato aggiornato l'ultima volta, e l'autore risponde nelle discussioni di assistenza?
  3. È installato su tanti siti o è una cosa di nicchia con dieci installazioni?
  4. Quanto carica su ogni pagina, anche su quelle dove la sua funzione non serve?
  5. La stessa cosa si può fare con qualcosa che ho già installato, o con tre righe di codice nel tema?
  6. Se un domani sparisse, il sito cosa perderebbe e quanto costerebbe rimediare?

La quinta domanda è quella che elimina più roba. Una quantità enorme di componenti aggiuntivi risolvono problemi minuscoli che si risolvono con poche righe dentro il tema: aggiungere un codice di tracciamento, cambiare la lunghezza dei riassunti degli articoli, nascondere una voce dal pannello, mettere un messaggio in cima al sito. Ogni volta che installi un pezzo intero per fare una cosa piccola, ti porti dietro il suo peso, i suoi aggiornamenti e il suo rischio per sempre.

La sesta è quella che uso per decidere quanto essere prudente. Un componente che gestisce la grafica delle pagine, se sparisce, si porta via l'impaginazione di tutto il sito: è un legame fortissimo e va scelto con estrema attenzione, perché ci convivrai per anni. Un componente che aggiunge un pulsante di condivisione, se sparisce, non lascia rimpianti. Il livello di attenzione nella scelta deve essere proporzionale a quanto ti leghi.

Il costo nascosto in velocità

C'è una cosa che i clienti non sanno e che vale la pena spiegare, perché cambia il modo di guardare la faccenda. Molti componenti aggiuntivi caricano i loro file su tutte le pagine del sito, non solo dove servono. Il modulo di contatto carica il suo codice anche sulla pagina del chi siamo dove nessun modulo esiste. La raccolta di caroselli carica il suo su tutte le pagine anche se il carosello sta in una sola.

Moltiplica questa cosa per venticinque e ottieni una pagina che, prima di mostrare il primo pixel al visitatore, deve scaricare ed eseguire una quantità di roba sproporzionata rispetto a quello che contiene. È il motivo per cui trovo siti vetrina di dieci pagine che ci mettono otto secondi ad aprirsi su telefono. Non c'è niente di pesante dentro: è tutto contorno.

CategoriaUtilità realePeso tipicoCosa faccio di solito
Memorizzazione pagine e velocitàAlta, è tra le cose che rendono di piùBasso, anzi alleggerisceNe tengo uno solo, mai due
Backup automatici verso l'esternoAltissima, è la rete di sicurezzaBasso, lavora di notteSempre presente, verificato ogni tanto
Costruttori grafici di pagineDipende dal progetto e da chi aggiornaAlto, a volte altissimoUno solo, scelto con cura, mai due
Raccolte di elementi decorativiBassa nella maggior parte dei casiAlto, caricano su tutte le pagineTolti quasi sempre
Pulsanti di condivisione socialMolto bassa, quasi nessuno li usaMedio, spesso con tracciamenti esterniTolti e sostituiti con collegamenti semplici
Statistiche dentro il pannelloBassa, i dati si vedono meglio altroveAlto, appesantiscono anche la gestioneTolti, si usano gli strumenti dedicati
Pacchetti che fanno tuttoMedia a parole, bassa nei fattiMolto altoSostituiti con strumenti separati
Traduttori automatici istantaneiBassa, creano più problemi di quanti ne risolvanoMedioTolti, si valuta una struttura vera

Sulla riga delle statistiche dentro il pannello spendo una parola perché è quella che stupisce di più. Sembra comodissimo avere i grafici delle visite dentro l'amministrazione del sito. Il problema è che quegli strumenti spesso registrano ogni singola visita dentro il database del sito, che cresce a dismisura e rallenta tutto, gestione compresa. Ho trovato siti in cui la tabella delle statistiche era più grande di tutto il resto del sito messo insieme. I dati delle visite si guardano negli strumenti fatti per quello, che stanno fuori e non pesano niente.

La parte di sicurezza, che è quella seria

Finora ho parlato di peso e di ordine. Ma il motivo principale per cui faccio questa pulizia è un altro, ed è la sicurezza. Nella grande maggioranza dei siti compromessi che ho recuperato, la porta di ingresso era un componente aggiuntivo vecchio con un difetto noto.

Il meccanismo è più banale di quanto si immagini e non c'entra niente con il film dell'attacco mirato. Qualcuno scopre un difetto in un componente diffuso e lo pubblica. Da quel momento esistono programmi automatici che girano per internet provando quel difetto su milioni di siti a caso. Non ti hanno scelto: hanno provato con tutti e il tuo era tra quelli che non avevano aggiornato. Il sito di un'azienda di venti dipendenti in provincia viene attaccato esattamente come quello di una multinazionale, perché il programma non guarda chi sei.

Da qui derivano due regole pratiche. La prima: ogni componente che hai installato è una superficie in più che qualcuno può provare ad attaccare, anche quelli disattivati, perché i file restano sul server e in alcuni casi sono raggiungibili lo stesso. Disattivare non basta, va disinstallato. La seconda: gli aggiornamenti non sono una scocciatura, sono la manutenzione che tiene chiuse le porte. Un sito lasciato fermo un anno ha, statisticamente, diverse porte aperte senza saperlo.

Aggiungo una cosa che riguarda dove si prendono i componenti. Ogni tanto trovo siti con versioni a pagamento installate senza licenza, scaricate da posti dubbi. È un rischio enorme e lo dico senza giri di parole: quei pacchetti sono spesso modificati con codice aggiuntivo che non vedi. Un componente a pagamento costa qualche decina di euro l'anno, un sito ripulito dopo una compromissione costa molto di più, per non parlare del danno di immagine se Google segnala il tuo sito come pericoloso.

Come faccio la pulizia senza rompere niente

La pulizia è una di quelle operazioni che sembrano innocue e che invece possono fare danni, perché a volte un componente apparentemente inutile sta tenendo in piedi qualcosa che nessuno ricorda. Il metodo che uso è prudente e lento apposta.

  1. Copia del sito in un ambiente di prova separato, dove posso rompere liberamente.
  2. Elenco scritto di tutto quello che è installato, con versione, data dell'ultimo aggiornamento e funzione presunta.
  3. Verifica di quali sono davvero in uso, cercando dove compaiono nelle pagine.
  4. Disattivazione uno alla volta, con controllo delle pagine principali dopo ognuna.
  5. Sostituzione dei doppioni, tenendo quello mantenuto meglio.
  6. Rimozione vera, non solo disattivazione, di quelli scartati.
  7. Pulizia di quello che hanno lasciato indietro nel database, che è la parte che quasi nessuno fa.
  8. Riporto sul sito vero, con backup fresco prima di iniziare.

Il punto sette è quello che distingue una pulizia fatta bene da una fatta in fretta. Molti componenti, quando li rimuovi, lasciano tabelle e impostazioni dentro il database. Su un sito che ha accumulato per anni, questi residui possono essere una quantità sorprendente di roba, e appesantiscono ogni operazione. Ripulirli richiede attenzione perché bisogna sapere cosa si sta cancellando, ma il risultato si sente, soprattutto nella velocità del pannello di gestione.

Il punto quattro va fatto con una pazienza che a volte manca. La tentazione di disattivarne dieci insieme e vedere se il sito regge è forte, ma se qualcosa si rompe non sai quale dei dieci è il responsabile e ricominci da capo. Uno alla volta, con un giro di controllo tra uno e l'altro, è più lento ma ti porta a casa il risultato al primo tentativo.

Quanto si guadagna, in pratica

Do qualche riferimento concreto preso dai lavori che ho fatto, con la solita avvertenza che ogni sito è diverso. Su un sito vetrina aziendale con una trentina di componenti installati, la pulizia porta tipicamente a dimezzare il tempo di apertura delle pagine, e questo prima ancora di toccare le immagini o la configurazione del server. È l'intervento con il miglior rapporto tra fatica e risultato che conosca.

Sul pannello di gestione il guadagno è ancora più evidente e i clienti se ne accorgono subito, perché è la parte che usano loro. Un'amministrazione che impiegava cinque secondi a caricare ogni schermata, dopo la pulizia ne impiega uno. Chi ci lavora tutti i giorni per caricare prodotti o scrivere articoli te lo dice al telefono con entusiasmo, molto più di quanto si entusiasmi per la velocità delle pagine pubbliche.

Sul piano economico, una pulizia su un sito aziendale normale è un lavoro di qualche ora. Non è una cifra grossa, e nella mia esperienza è il primo intervento da fare prima di considerare cose più costose come cambiare hosting o rifare il sito. Una buona parte delle volte in cui mi chiamano perché il sito è lento, la soluzione è qui dentro e non serve spendere altro.

Le domande che mi fanno più spesso

Le domande che ricevo più spesso quando propongo di fare ordine.

Quanti plugin sono troppi?

Non esiste un numero e diffido di chi te lo dà, perché la domanda è mal posta. Un sito con venti componenti scelti bene, aggiornati, con funzioni che non si sovrappongono, va benissimo e ne ho diversi in manutenzione così. Un sito con sei di cui due abbandonati da anni è messo peggio. Quello che guardo davvero è altro: sono tutti aggiornati, hanno tutti un autore che li mantiene ancora, ce ne sono due che fanno la stessa cosa, e soprattutto ognuno di loro serve a qualcosa che il sito usa davvero. Se le risposte a queste quattro domande sono buone, il numero non ha nessuna importanza. Detto questo, se ti ritrovi sopra i trenta è quasi matematico che dentro ci sia roba inutile, perché nessun sito aziendale normale ha bisogno di trenta funzioni aggiuntive diverse.

Posso disattivarli invece di toglierli, per sicurezza?

La disattivazione è utile come passaggio intermedio quando stai verificando se una cosa serve, e infatti nella mia procedura c'è. Ma non deve essere il punto di arrivo, per un motivo di sicurezza che molti ignorano: i file restano sul server anche quando il componente è spento, e in certi casi sono ancora raggiungibili dall'esterno. Questo significa che un difetto di sicurezza in un componente disattivato può comunque essere sfruttato. Ci sono stati casi documentati esattamente di questo. Quindi la regola è: disattiva per provare, e se dopo qualche giorno confermi che non serve, disinstalla davvero. Se hai paura di perdere le impostazioni, fai un backup prima, che comunque andrebbe fatto a prescindere.

Come faccio a sapere se uno è abbandonato?

Nella pagina di ogni componente, dentro l'archivio ufficiale, trovi tre informazioni che bastano. La prima è la data dell'ultimo aggiornamento: se supera l'anno, accendi l'attenzione, se supera i due, considera la sostituzione. La seconda è l'indicazione di compatibilità con le versioni recenti del sistema: quando compare l'avviso che non è stato testato con le versioni recenti, è un segnale forte. La terza, la più affidabile di tutte, è la sezione di assistenza: guarda se le domande delle persone ricevono risposta dall'autore e quanto tempo fa. Un componente con venti domande senza risposta negli ultimi sei mesi è di fatto abbandonato, anche se tecnicamente risulta aggiornato. Per quelli a pagamento vale lo stesso ragionamento, guardando il registro delle versioni sul sito di chi lo vende.

Un plugin gratuito è meno sicuro di uno a pagamento?

Non automaticamente, e la domanda va girata diversamente. Alcuni dei componenti più affidabili e diffusi al mondo sono gratuiti, con dietro squadre che ci lavorano a tempo pieno e che guadagnano da altro. Allo stesso tempo ho visto prodotti a pagamento tenuti malissimo. Quello che conta non è il prezzo ma chi c'è dietro e quanto è diffuso: un componente usato su milioni di siti ha migliaia di occhi addosso e i difetti vengono scoperti e corretti in fretta. Uno usato su trecento siti, anche se lo hai pagato, può avere difetti che nessuno ha mai cercato. Il vantaggio vero della versione a pagamento è di solito l'assistenza e la garanzia di continuità: stai pagando qualcuno che ha un motivo economico per continuare a mantenerlo. Ed è un motivo valido per spendere, soprattutto sulle cose critiche.

Se tolgo un plugin perdo i contenuti che ha creato?

Dipende da come sono salvati i contenuti, ed è esattamente la domanda giusta da farsi prima di installare qualsiasi cosa. Gli articoli, le pagine e i prodotti sono salvati nel formato standard del sistema e restano lì qualunque cosa tu disinstalli. I contenuti creati da strumenti grafici di impaginazione, invece, sono spesso salvati in un formato proprio: se togli lo strumento, le pagine restano ma l'impaginazione si scompone e ti ritrovi con il testo tutto uno sotto l'altro, a volte con dentro pezzi di codice visibili. Stessa cosa per certi tipi di contenuto creati da componenti specializzati, tipo le schede di un catalogo o gli eventi di un calendario: quelli spariscono dalla vista anche se i dati grezzi restano nel database. Per questo prima di ogni rimozione faccio la prova nella copia separata e guardo cosa succede davvero, invece di fidarmi delle promesse.

Ogni quanto andrebbe fatta questa pulizia?

Su un sito in manutenzione regolare non serve una pulizia periodica, perché l'ordine si mantiene strada facendo: ogni volta che si installa qualcosa si valuta se serve davvero, e ogni volta che una funzione non serve più si rimuove. È come tenere in ordine una scrivania, si fa un po' ogni giorno. Il lavoro grosso di riordino ha senso in tre momenti: quando prendi in carico un sito costruito da altri, quando il sito è rimasto fermo per un anno o più senza nessuno che se ne occupasse, e quando ti accorgi che è diventato lento senza un motivo evidente. Fuori da questi casi, una revisione dell'elenco una volta l'anno, magari insieme al controllo generale, è più che sufficiente e richiede mezz'ora.

Quello che mi porto dietro da anni di questi interventi è un'idea semplice: ogni componente che aggiungi a un sito è un piccolo debito che paghi per sempre, in aggiornamenti da fare, in peso sulle pagine e in superficie esposta. Alcuni di questi debiti valgono ampiamente la pena, perché ti danno funzioni che non potresti avere altrimenti. Molti altri li hai contratti senza accorgertene, per una prova fatta un pomeriggio o per una funzione che poi non hai mai usato. Fare pulizia significa smettere di pagare i secondi e tenere solo i primi.

Il tuo sito è lento e non sai perché?

Mandami l'indirizzo del sito e, se ce l'hai, un accesso in sola lettura: ti dico cosa toglierei, cosa sostituirei e quanto tempo di caricamento si recupera.

Scrivimi dal modulo

04

Lavoriamo Insieme

Hai un progetto per un sito web, un ecommerce o un gestionale? Scrivimi e trasformiamolo in realtà. Realizzo siti WordPress, ecommerce WooCommerce, gestionali Laravel e piattaforme e-learning customizzati sui bisogni di ogni cliente.

Email

Telefono

Location

Rimini, Italia

Chatta con me
Punteggio0
Vite3