Directory articoli
Anche il codice più elegante può compromettere il tuo sito web WordPress se scegli i plugin sbagliati.
Non è un'esagerazione. Ho visto troppi siti web che funzionavano perfettamente, per poi vedere la loro velocità di caricamento schizzare da 0.8 secondi a 3 secondi dopo aver aggiunto alcuni frammenti di codice. Dopo una lunga indagine, si è scoperto che un determinato frammento di codice eseguiva una serie di query non necessarie nel database.
Oggi parleremo di WPCode e Fluent Snippets, due plugin per la gestione di snippet di codice che vengono spesso confrontati nella community di WordPress.
A dire il vero, li ho usati entrambi ampiamente e ho persino aiutato degli amici a evitare alcuni problemi. Oggi condividerò con voi tutte le mie esperienze sincere.
Permettetemi di iniziare con qualche informazione di base.
Esistono essenzialmente diversi modi per aggiungere codice personalizzato in WordPress. Uno consiste nel modificare direttamente il file functions.php del tema, un metodo semplice e diretto, ma che comporta la perdita di tutte le modifiche ad ogni aggiornamento; un altro è utilizzare un tema figlio, leggermente migliore ma con costi di manutenzione comunque più elevati; infine, un altro ancora è trovare un plugin affidabile per gli snippet di codice, più sicuro da gestire ed eseguire.
WPCode e Fluent Snippets sono i concorrenti in queste due categorie.
WPCode , un veterano della community di WordPress, è un prodotto del team WPCode e ha sempre goduto di un'ottima reputazione. Ha una valutazione di 4.9 su 10; nonostante abbia solo 31 recensioni, questo punteggio parla da sé.
Fluent Snippets è un altro prodotto del team WPManageNinja, lo stesso team che ha creato FluentCRM. Ha oltre 40 installazioni e una valutazione di 4.6, leggermente inferiore a WPCode ma con un numero di installazioni quattro volte superiore.
Questo è interessante. La relazione inversa tra volume di installazioni e valutazioni deve avere una ragione.
Esperienza di redazione
WPCode utilizza l'editor ACE, che, lasciatemelo dire, ha uno stile decisamente tradizionale di WordPress. Offre l'evidenziazione della sintassi, ma la combinazione di colori è piuttosto conservativa, e scordatevi il completamento automatico del codice. Se siete abituati a VS Code, usarlo qui vi darà una sensazione disorientante, come se foste tornati indietro di cinque anni.
Fluent Snippets è diverso; è integrato direttamente in Monaco Editor.
Sì, è lo stesso editor di VS Code. Evidenziazione del codice, completamento automatico, suggerimenti di sintassi: l'esperienza è praticamente identica a quella di scrivere codice in locale. Quando l'ho usato per la prima volta, me ne sono innamorato all'istante. È stata quella sensazione di "finalmente, un plugin che si è preso la briga di creare un editor decente!".
Ma ecco la domanda: un editor migliore significa necessariamente un'esperienza utente migliore?
Incerto.
Conosco un amico a Shenzhen che gestisce un'attività di creazione di contenuti web. È il proprietario unico di oltre trenta siti web e se ne occupa da solo. Mi ha detto che adora WPCode. Perché? Perché è semplice. Apri il pannello di amministrazione, fai un paio di clic, il codice appare e il gioco è fatto. Non gli servono funzionalità sofisticate; gli servono stabilità e un funzionamento senza errori.
Quelle parole mi colpirono profondamente all'epoca.
Sì, Monaco Editor è ottimo e molto potente. Ma per chi gestisce più di trenta siti web al giorno, la curva di apprendimento stessa rappresenta un ostacolo.
存储方式
Dopo aver parlato dell'editor, passiamo a qualcosa di più impegnativo.
Il codice WPCode viene memorizzato nel database e tutti gli snippet sono memorizzati nella tabella wp_options. Ogni operazione di lettura comporta una query al database e, in scenari ad alta concorrenza, il numero di query può aumentare considerevolmente.
Fluent Snippets utilizza l'archiviazione su file. Gli snippet di codice vengono memorizzati come file PHP nella directory wp-content/fluent-snippets/ e WordPress li include direttamente durante l'esecuzione, evitando interrogazioni al database.
In teoria, l'archiviazione dei file è più veloce e più sicura.
Perché è considerato più sicuro? Perché l'archiviazione su file isola intrinsecamente il rischio di SQL injection; non ci sono frammenti di codice nel database che possano essere iniettati.
Ma c'è un ma.
Anche l'archiviazione dei file presenta delle problematiche. Ogni volta che il frammento di codice viene aggiornato, sono necessari i permessi di scrittura. Se il server non è configurato correttamente, o in determinati ambienti di hosting virtuale particolari, la scrittura dei file potrebbe presentare dei problemi. In precedenza, qualcuno si era lamentato in un gruppo del fatto che il codice non funzionava dopo l'aggiornamento del frammento di codice e, dopo un'indagine, si è scoperto che si trattava di un problema di permessi sui file.
Pertanto, non esiste una soluzione miracolosa; ogni caso è diverso.
Condizioni di carico
È qui che risiede la differenza più evidente tra i due plugin.
Il caricamento condizionale di WPCode è piuttosto semplice e supporta sia il caricamento in primo piano che in background. È anche possibile abilitarlo o disabilitarlo a livello globale. È davvero così semplice.
Il caricamento condizionale di Fluent Snippets è incredibile: può essere basato su ruoli utente, regole URL, tipi di dispositivo e persino campi personalizzati. La sua professionalità è eccezionale.
Cosa significa questo?
Questo significa che è possibile ottenere un controllo molto preciso. Ad esempio, "carica questo codice solo sui dispositivi mobili in cui l'URL contiene /product/ e l'utente non è autenticato" è un requisito praticamente impossibile da realizzare in WPCode, ma è una funzionalità standard in Fluent Snippets.
Certo, ci sono dei costi da sostenere. Più complessa è la configurazione, maggiori saranno i costi di manutenzione. Sei mesi dopo, è lecito chiedersi se si siano ancora in grado di comprendere le condizioni e le regole che si sono scritte.
I miei sentimenti
WPCode è come un coltellino svizzero: è sufficiente e stabile, ma la sua funzionalità ha dei limiti.
Fluent Snippets è come una cassetta degli attrezzi professionale: puoi fare di più, ma devi sapere cosa stai facendo.
Onestamente, questi due non sono nemmeno concorrenti nello stesso settore.
Se gestisci solo un sito web personale o un'attività su piccola scala, WPCode è sufficiente. Il suo maggior vantaggio risiede nella possibilità di gestire il codice in modo efficiente, evitando bug e garantendo un funzionamento stabile.
Se esegui operazioni complesse o il tuo sito web presenta una logica di business articolata, il caricamento condizionale di Fluent Snippets può rivelarsi fondamentale.
Applicazione pratica: il tipo di contenuto non può richiamare direttamente gli shortcode
Bene, ora che abbiamo esaminato i confronti di base, passiamo ad alcuni esempi pratici.
Molte persone creano uno snippet di tipo Contenuto in Fluent Snippets e poi vi inseriscono degli shortcode.
come
[nihaoya]Giusto.
Lasciatemi dire che anch'io sono già caduto in questa trappola.
Fluent Snippets supporta tre tipi di snippet: di tipo PHP, di tipo Content e di tipo CSS/JS.
Se il tuo snippet è impostato sul tipo Contenuto (PHP+HTML), scrivi quanto segue al suo interno: [nihaoya]Non lo analizzerà; si limiterà a... [nihaoya] Questi caratteri vengono visualizzati esattamente come erano.
Si tratta di testo semplice, non di output abbreviato.
Per far sì che lo shortcode venga effettivamente eseguito, deve essere racchiuso nella funzione PHP `do_shortcode()`. La sintassi è la seguente:
<?php echo do_shortcode('[nihaoya]'); ?>
In questo modo, WordPress analizzerà lo shortcode e visualizzerà il contenuto corrispondente.
Ci ho messo un bel po' a capirlo; non era specificato chiaramente nella documentazione.
Se il tuo snippet utilizza il tipo PHP, è ancora più semplice: basta scrivere un'istruzione `return` nella funzione, registrarla con `add_shortcode` e lo shortcode funzionerà correttamente. Non c'è ambiguità; il problema risiede unicamente nel tipo Content.
Sospetto che chi ha scritto questa funzionalità abbia dato per scontato che il tipo di contenuto sia principalmente per il contenuto HTML e che le abbreviazioni debbano essere gestite utilizzando i tipi PHP, da qui la mancanza di un'indicazione chiara a riguardo nell'interfaccia. Tuttavia, in pratica, molte persone usano entrambi i tipi in modo intercambiabile, il che può causare problemi.
conclusione
A chi è adatto WPCode ? A piccoli siti web con esigenze semplici e a chi non vuole impegnarsi troppo. È pronto all'uso fin da subito, con una curva di apprendimento minima e una risoluzione dei problemi semplice.
A chi è adatto Fluent Snippets ? A siti web di medie e grandi dimensioni con un controllo condizionale complesso e un'attenzione particolare alle prestazioni. L'archiviazione dei file garantisce velocità di esecuzione più elevate, il caricamento condizionale offre un controllo più preciso e l'editor Monaco offre un'esperienza di sviluppo più comoda.
Naturalmente, questo presuppone che siate disposti a pagare il costo dell'apprendimento per queste "cose in più".
Francamente, se devi solo aggiungere il codice di Google Analytics o un avviso di copyright alla fine del tuo articolo, WPCode va benissimo. Non c'è davvero bisogno di complicarsi la vita modificando Fluent Snippets per avere un "editor migliore".
Tuttavia, se il tuo sito richiede test A/B e necessita di caricare codice diverso a seconda del dispositivo, del ruolo dell'utente o del tipo di pagina, il caricamento condizionale di Fluent Snippets può farti risparmiare molto lavoro di valutazione manuale e di codifica rigida.
Un'ultima cosa.
Gli strumenti sono solo mezzi; il loro vero valore risiede nella capacità di sfruttarne appieno il potenziale.
WPCode è uno strumento popolare, stabile, facile da usare e adatto a implementazioni rapide. Fluent Snippets è uno strumento professionale che offre prestazioni superiori, un controllo delle condizioni più flessibile ed è adatto a sviluppatori e siti web complessi.
Scegliere i plugin non significa ostentare le proprie capacità, ma rendere il proprio sito web più stabile, veloce e sicuro.
Credo fermamente che la cosa migliore sia ciò che si adatta meglio alle tue esigenze, non necessariamente ciò che offre più funzionalità o è più potente.
Riassunto di una frase
- Sito piccolo, requisiti semplici → Codice WP
- Sito di grandi dimensioni, complesso controllo delle condizioni → Frammenti Fluenti
Infine, ecco un consiglio: l'esplorazione più preziosa consiste nell'acquisire esperienza pratica ed eseguire il codice. Non limitatevi a salvare la risorsa tra i preferiti senza prima averla provata!
Speriamo che l'articolo "WPCode vs Fluent Snippets: Qual è il migliore? Confronto tra plugin e tutorial pratico" condiviso sul blog di Chen Weiliang ( https://www.chenweiliang.com/ ) possa esservi utile.
Sentitevi liberi di condividere il link di questo articolo: https://www.chenweiliang.com/cwl-34009.html
