Su WordPress ci sono migliaia di plugin tra cui scegliere per personalizzare le pagine e soddisfare le esigenze di sviluppatori e utenti: offrono un modo semplice per estendere le caratteristiche del sito e le sue funzionalità,
Esistono tantissime ragioni per cui i plugin di WordPress sono essenziali per costruire e mantenere un sito ma averne troppi non permette di garantire un’esperienza fluida e una gestione efficiente del sito.
Vulnerabilità e sicurezza
In merito alla gestione di un sito WordPress è importante capire che i plugin espongono il sito web a una serie di possibili violazioni della sicurezza.
Questo perché, sebbene il core di WordPress sia sicuro e costantemente aggiornato, i plugin provengono da sviluppatori di terze parti e sono rilasciati da persone diverse con livelli e standard di programmazione diversi.
Wordfence (noto sistema di sicurezza molto utilizzato) stima che le vulnerabilità dei plugin sia il principale fattore di rischio di un sito web quando si tratta di problemi legati alla sicurezza.
Secondo alcune ricerche condotte i plugin sono la causa principale della maggior parte degli hack WordPress perché gli hacker sanno sfruttare il fatto che non tutti add-on sono sicuri e anzi sono più facilmente soggetti a problemi a causa della loro variegata provenienza.

Gli hacker traggono vantaggio dalle vulnerabilità dei plugin per diversi motivi:
- installazione di codice dannoso per avere libero accesso ed effettuare facilmente modifiche
- inserimento di link e creazione di pagine nel tentativo di aumentare il ranking SEO del proprio sito
- utilizzo delle risorse del server per invio di e-mail o per effettuare inoltro di spam o attacchi DDoS
- distribuzione su larga scala di malware o ransomware
Esistono diversi modi per prevenire le vulnerabilità dei plugin (e le violazioni della sicurezza) tra cui ovviamente quello di mantenerli sempre aggiornati e seguire le note di rilascio che informano su eventuali problemi corretti.
Impatto sulle prestazioni
Chiunque conosce la frustrazione di un sito che impiega molto tempo a caricarsi e purtroppo l’utilizzo di troppi plugin o di alcuni che non lavorano bene insieme può limitare in modo significativo la velocità e le prestazioni complessive.
Per comprendere perché questo succede bisogna analizzare alcuni aspetti del loro funzionamento.
Richieste HTTP aggiuntive
Ogni singola risorsa (contenuto, immagini, CSS o file JavaScript) associata ad una pagina utilizza una richiesta HTTP e tutte le volte che un utente la interroga, una diversa richiesta viene inviata al server per scaricare tutti i file necessari.
Il server quindi invia il contenuto richiesto e la pagina prende in pochi secondi la sua forma definitiva grazie a tutte le risorse ottenute.

I plugin, dato che sono insiemi di script e risorse, creano richieste HTTP aggiuntive ed a volte il loro numero può essere molto alto: più ci sono richieste HTTP, più potenzialmente lento sarà il renderng della pagina.
Questo ritardo è spesso solo una questione di millisecondi e potrebbe non essere nemmeno un problema ma la somma di eccessive richieste in un sito già poco ottimizzato può fare la differenza in termini di risposta finale.
Query sul database
Un altro modo in cui i plugin possono influire negativamente sulle performance è l’invio di query di database aggiuntive sulle quali WordPress basa il suo funzionamento.
Tutte le informazioni di un sito (contenuti, impostazioni, personalizzazioni) sono archiviate in questo database ed anche alcuni plugin memorizzano le informazioni ed effettuano le query sia per archiviare che per recuperare dati.
A seconda delle prestazioni, delle risorse disponibili e della qualità del server e del provider di hosting, un eccesso di richieste può gravare anche in modo piuttosto evidente sull’esperienza di navigazione complessiva.
Possibilità di crash
È possibile che l’uso di plugin (indipendentemente dal numero) possa causare il blocco completo di tutto il sito che si manifesta con arresti anomali e l’impossibilità di raggiungere le pagine ed i contenuti.

Purtroppo non è sempre facile prevenire questo tipo di problema dato che WordPress è un progetto open source e chiunque è libero di creare e distribuire plugin, motivo per cui è importante sceglierli e testarli con cura.
Misurazione l’incidenza sul caricamento
Per ottenere rapidamente un’overview di come i plugin stanno impattando sulle prestazioni del sito WordPress è possibile utilizzare alcuni tool come il plugin P3 (Plugin Performance Profiler),

Questo strumento crea un profilo delle prestazioni dei plugin di un sito WordPress misurando il loro impatto sul tempo di caricamento e fornendo una reportistica completa che informa su diversi aspetti tra cui:
- numero di plugin attivi totali che vengono considerati nella scansione
- tempo necessario al loro caricamento (che si aggiunge al tempo totale di rendering delle pagine)
- impatto percentuale rispetto al load time totale delle risorse
- numero di richieste inviate e processate dal database
Il suo utilizzo è molto semplice ed è in grado di analizzare autonomamente svariate caratteristiche del sito fornendo moltissimi dettagli.
Alternativa al loro utilizzo
Il file functions.php è una validissima soluzione che può essere utilizzata per aggiungere nuove funzionalità o estendere quelle esistenti sia nel tema che nell’installazione di WordPress.
Non sostituisce l’utilizzo di plugin (a meno che essi non vengano riscritti da zero al suo interno, ma questo avrebbe poco senso) ma aiuta in moltissimi casi dove si ha la necessità di fare una specifica integrazione e non si vuole appesantire eccessivamente il sito.
Ad esempio, con il suo aiuto è possibile installare Google Analytics (o qualsiasi altra libreria JavaScript) con pochissime righe di codice senza utilizzare pesanti plugin che portano allo stesso risultato ma che offrendo moltissime funzionalità hanno un maggiore impatto e carico sul database e sul server.
Il senso di utilizzare il functions.php non è quello di abbandonare l’utilizzo dei plugin che rimangono un alleato fondamentale di WordPress ma è di evitarne l’utilizzo eccessivo, quando è possibile concentrarsi su una specifica integrazione su cui si avrà il pieno controllo.
Sceglierli nel modo giusto
Esistono alcuni accorgimenti che permettono di selezionare in modo più consapevole e accurato i plugin da installare e si basano sostanzialmente su una semplice e veloce valutazione delle informazioni fornite.
Aggiornamenti e rilasci
Un plugin è valido quanto il codice che c’è dietro, questo perché se è programmato bene e costantemente migliorato e aggiornato è molto più efficiente di altri scritti male e trascurati.

Il numero di volte in cui un plugin viene aggiornato e quante richieste di supporto sono state gestite sono i maggiori indicatori della sua qualità dato che è probabile che chi lo gestisce sia molto attento alla risoluzione di problemi legati al suo funzionamento e alla sicurezza.
Reputazione e popolarità
Alcuni plugin premium come WooCommerce o WPML sono gestiti da grosse aziende che lavorano per garantire che questi strumenti funzionino al meglio e forniscono aree di supporto estremamente valide.

Per i plugin gratuiti, un altro rapido per raccogliere informazioni sulla qualità è quello di guardare il punteggio di valutazione.e le recensioni dove gli utenti esprimono pareri specifici sugli aspetti migliori.
Compatibilità
Un altro aspetto fondamentale prima di scegliere un nuovo plugin o di effettuare un aggiornamento è di verificare la compatibilità con la versione di WordPress installata sul proprio sito e la versione PHP supportata (normalmente visibile nel pannello di controllo dell’hosting).

Non dare peso a queste informazioni significa esporre il sito a potenziali problemi come crash di WordPress che non permettono di visualizzare il sito e nei casi più scomodi di non poter accedere nemmeno all’area di amministrazione per disattivare il plugin che ha causato gli errori.
Nulla che non si possa poi risolvere facilmente ma è sempre meglio evitare questa tipologia di disservizio ed avere sempre un backup aggiornato.
Multifunzione
Molto spesso si ha la necessità di controllare più aspetti insieme e ci sono molti plugin dedicati alla completa gestione di aree ben specifiche e che quindi offrono una quantità altissima di opzioni e personalizzazioni.
Ad esempio chi possiede un piano hosting con SiteGround può utilizzare SG Optimizer che ha lo scopo di migliorare le performance di WordPress attraverso diverse tecniche di ottimizzazione.

La comodità di plugin come questo è che permettono di gestire insieme svariate opzioni (come l’ottimizzazione del front-end, il caricamento dei font, la compressione delle immagini, ecc…) che normalmente sarebbero delegate a strumenti più piccoli e specifici.
Amministrate tutto da un unico plugin significa anche avvantaggiarsi nella fase di aggiornamento avendone solo uno da controllare.
Corretta gestione dei plugin
Quali sono quindi le regole principali per gestire al meglio i plugin e quanti se ne possono installare senza inficiare sulle prestazioni del sito?
Solo i plugin necessari
Molti plugin offrono una varietà di funzioni e vantaggi incredibili a cui non è possibile e non bisogna rinunciare.
Ci sono sistemi di gestione dei template avanzati come Elementor Website Builder, suite di strumenti utili per sicurezza, backup e velocità come Jetpack o plugin per l’ottimizzazione per i motori di ricerca come Yoast SEO.

Se questi sono una parte fondamentale del tema o della gestione del sito è corretto che vengano mantenuti installati ma quelli considerati “secondari” o accessori devono essere sempre valutati con cura per evitare di ritrovarsi con decine di plugin (anche per un discorso di aggiornamento e sicurezza).
Analizzare cosa si utilizza
Ci sono molte integrazioni che si possono facilmente implementare con qualche riga di codice o interagendo con il functions.php quindi quando si installa un nuovo plugin questo dovrebbe essere realmente necessario.
Utilizzare una suite completa come MonsterInsights, ricca di funzionalità e opzioni per esempio la semplice installazione di Google Analytics parte da un presupposto totalmente sbagliato.
O il plugin e le sue funzionalità vengono sfruttate in modo piuttosto completo o meglio ripiegare con un minimo sforzo aggiuntivo ad integrazioni manuali (manipolando ad esempio il functions.php per installare Analytics su WordPress) o plugin molto più “leggeri” e specifici.
Inibire quelli inattivi
Ci sono due motivi per cui un plugin può essere installato ma non attivo: il primo (e purtroppo più ricorrente) è che ci si dimentica di eliminare quelli che non sono utilizzati da tempo.

Questo porta ad una diminuzione dello spazio a disposizione, un necessario aggiornamento di funzionalità non utilizzate ed espone il sito a potenziali attacchi dato che seppur non attivo è vulnerabile.
Il secondo motivo è legato ad una gestione ottimizzata dei plugin: ad esempio ce ne sono sono alcuni che si occupano di effettuare backup, pulizia o che aiutano la gestione del sito e se questi vengono utilizzati su specifiche necessità può essere una buona idea attivarli solo all’occorrenza.
Ottimizzare il database
Con il passare del tempo l’installazione e l’eliminazione di plugin può creare un appesantimento del database che diventerà sempre più lento e meno efficiente.
Ci sono diversi modi anche manuali per fare una corretta pulizia e rinvigorire il database ma per chi non ha dimestichezza o non vuole problemi esistono ottimi strumenti come WP-Optimize che tra le sue funzionalità offre la possibilità di:
- rimuove tutti i dati non necessari (ad es. commenti cestinati, non approvati, spam, dati obsoleti) oltre a pingback e trackback
- compatta e deframmenta le tabelle MySQL
- esegue ottimizzazioni senza la necessità di effettuare query manuali
- conserva i dati di un determinato numero di settimane durante la pulizia
- può effettuare pulizie automatiche settimanali (o meno frequenti)
- mostra le statistiche del database e i potenziali risparmi
Valutare le risorse del server
Per rispondere alla domanda più importante, quanti plugin si possono installare? Come spesso capita, purtroppo non esiste un numero fisso.
Se tutti i punti precedenti sono stati considerati rimane solo un fattore da esaminare che è la disponibilità di risorse del server dato che fondamentalmente ogni plugin richiede esecuzione di codice ed effettua richieste al database.

Anche se una valutazione reale dipende da tantissimi fattori legati a quanto è ottimizzato il sito ed il codice si può usare come regola generale:
- con un Hosting cloud condiviso (a basso costo) circa 0-5 plugin
- con un Hosting cloud condiviso con prestazioni alte circa 6-10 plugin
- se si dispone di un Cloud hosting, VPS o server dedicati circa 11-25 plugin
Ci sono comunque casi dove siti ottimizzati con una scelta accurata dei plugin possono installarne un numero anche estremamente maggiore senza influenzare particolarmente sul caricamento delle pagine.