Nella parte precedente di questa serie, abbiamo iniziato a esaminare 50 filtri WordPress. Selezionati tra centinaia, abbiamo iniziato esaminandone 10.
In questo tutorial, vedremo un altro gruppo di essi e ne esamineremo alcuni esempi.
Cominciamo!
Una delle funzionalità più interessanti di WordPress è la possibilità di tradurre ogni frammento di testo. Se la lingua del tuo sito web è l'inglese, tuttavia, non hai bisogno di questa funzione - o lo fai tu?
Il gettext
filtro potrebbe funzionare per te in un modo diverso. Vediamo un esempio interessante.
Supponiamo di aver trovato un buon plugin con cui lavorare, ma ti rendi conto che il suo proprietario non parla molto bene l'inglese, e vedi del testo scritto male nel codice. Fortunatamente le stringhe sono traducibili, quindi sarai in grado di cambiare quelle stringhe con l'aiuto di gettext
filtro.
Vediamo come:
WordPress usa una funzione chiamata sanitize_title ()
per ripulire i titoli, sostituisce gli spazi con trattini e li prepara a salvare come slug. Con il filtro sanitize_title
(sì, lo stesso nome) è possibile estendere questa funzione.
Se non vuoi la parola "the" nelle tue lumache, puoi eliminarle con lo snippet di codice seguente:
Una soluzione semplice ed elegante.
Questo comodo filtro "ti permette di specificare quali shortcode dovrebbero non essere gestito attraverso il wptexturize ()
funzione ", come detto nel Codex.
Se vuoi lo shortcode che hai costruito per escludere dalla texturizzazione, usa questo codice per aggiungere il tuo nome shortcode alla lista "do not texturize":
Abbastanza facile, giusto?
WordPress ha i propri controlli per i commenti (che possono essere un po 'troppo semplici contro gli spammer) prima di decidere se il commento deve essere contrassegnato come spam, essere inviato alla coda di moderazione o essere approvato. Il pre_comment_approve
filtro consente ai plugin di aiutare con questa decisione.
Nel mio paese, la Turchia, gli spammer di commento di WordPress usano solitamente nomi lunghi, a volte l'URL stesso.
Con lo snippet di codice riportato di seguito, puoi eliminare automaticamente gli spammer che utilizzano nomi come "Spedizione nazionale e internazionale a prezzi estremamente bassi (fai clic qui per ulteriori informazioni)":
75)? 'spam': $ approvato; // Fonte di esempio: https://gist.github.com/norcross/5468979?>
Un ringraziamento speciale a Andrew Norcross per l'idea!
Suggerimento bonus: se vuoi eliminare lo spam controllando la lunghezza dell'URL dell'autore del commento, usa "comment_author_url" invece di "comment_author". A proposito, Andrew Norcross ha usato l'URL nel suo suggerimento originale.
Sapevi che puoi postare sul tuo blog WordPress via email? WordPress offre questa funzione usata raramente e ti permette di accenderlo o spegnerlo con enable_post_by_email_configuration
filtro.
Per qualche motivo (come la sicurezza, forse) potresti voler disattivare questa funzione. E puoi farlo con una sola riga di codice:
Oppure se sei su WordPress Multisite e devi abilitare questa funzione (dato che è disabilitata di default su Multisite), puoi usare il __return_true ()
funzione:
Il wp_title ()
la funzione restituisce i titoli delle pagine, quelli che vediamo nella nostra scheda si occupano dei browser. E la funzione wp_title ci consente di manomettere quei titoli.
Un rispettato "guru" di WordPress (ed editore di Tuts + Code) Tom McFarlin ci spiega nel suo blog come riscrivere correttamente i nostri titoli di pagina con wp_title ()
funzione e il filtro con lo stesso nome:
Poiché wp_title è una funzione filtrata, ciò significa che siamo in grado di fornire un hook personalizzato che ci consente di definire lo schema per la visualizzazione dei nostri titoli non solo in modo più preciso, ma anche correttamente.
= 2 || $ page> = 2) $ title = sprintf (__ ('Pagina% s', 'tuts_filter_example'), max ($ paged, $ page)). "$ sep $ title"; return $ title; // Esempio di fonte: http://tommcfarlin.com/filter-wp-title/?>
Assicurati di controllare il suo articolo. Grazie, Tom!
Se hai bisogno di aiuto per modificare i dati dei commenti (l'ID post del commento, il nome dell'autore, l'indirizzo email dell'autore, il sito web dell'autore, il tipo di commento, l'ID dell'utente se il commentatore è un utente, il tipo di commento e il contenuto del commento), preprocess_comment
posso aiutarti.
OTTENETE MOLTE COMMENTI IN CUI OGNI SINGOLA PAROLA È MAIUSCOLA? Se lo fai, puoi automaticamente rendere quelle lettere minuscole con lo snippet di codice qui sotto:
Splendido, no?
Questo piccolo filtro ci consente di impostare i reindirizzamenti (diversi dal pannello di amministrazione) in seguito al processo di accesso, che può essere piuttosto utile in alcuni casi.
Se non desideri che i tuoi utenti (con il ruolo "Sottoscrittore") visualizzino il tuo pannello di amministrazione dopo l'accesso, puoi reindirizzarli alla home page del tuo sito Web:
ruoli) && is_array ($ user-> ruoli)) if (in_array ('subscriber', $ user-> ruoli)) return home_url (); else return $ redirect_to; ritorno; ?>
Il codice ci avverte di una cosa: "Assicurati di usare add_filter
al di fuori di is_admin ()
, poiché quella funzione non è disponibile quando viene chiamato il filtro. "
Se stai sviluppando un plug-in, potresti chiederti in che modo altri sviluppatori sono riusciti ad aggiungere link sotto i nomi dei loro plug-in nella pagina Plugin. Bene, usano questo filtro.
Per aggiungere link di azione personalizzati sotto il nome del tuo plug-in nell'elenco nella pagina Plugin, puoi utilizzare questa funzione e collegarla al filtro:
Si noti che stiamo usando il __FILE__
costante per collegare la nostra funzione al filtro con il nome del tuo plugin. Pulito, eh?
Usare questo con cautela: se si abusa quell'area per riempire lì con i link, le persone si ricorderanno di te come spammer.
Mai voluto pre-fill l'editor di post per iniziare a scrivere con un modello di post o lasciare note per i tuoi autori? Puoi, grazie a the_editor_content
filtro.
Facciamo l'esempio "lasciando le note per gli autori": se hai un sacco di cose da ricordare agli autori del tuo blog, puoi riempire l'editor di post con HTML usando questo codice:
Cambiare il $ template
variabile con tutto ciò che ti piace e sei a posto!
Abbiamo esaminato il secondo lotto di 50 filtri in questo articolo. Spero che ti sia piaciuto e imparato nuove cose da esso. Ci vediamo nel prossimo!
Voglio sentire anche i tuoi pensieri. Cosa ne pensi di questi filtri? Pubblica i tuoi commenti qui sotto; e se ti è piaciuto l'articolo, non dimenticare di condividerlo!