Cinquanta azioni di WordPress - 50 esempi (da 21 a 30)

In questa serie, stiamo dando un'occhiata alle azioni di WordPress: un tipo di hook che l'applicazione offre che ci consente di personalizzare l'esecuzione. Nell'ultimo articolo, abbiamo esaminato la seconda serie di 10 azioni che ci ha portato fino a 20 che abbiamo trattato finora.

In linea con lo spirito degli articoli precedenti, daremo un'occhiata a altre 10 azioni insieme a esempi di ciascuno. 

Detto questo, riprendiamo.

Manipolazione get_posts () Prima che sia elaborato

Il pre_get_posts l'azione gestisce una delle funzioni di query più importanti: get_posts ().

Inclusione di tipi di post personalizzati nei risultati di ricerca

Supponiamo che tu gestisca un blog di recensioni cinematografiche e che il tipo di post "Film" venga visualizzato nei risultati di ricerca. Puoi includere qualsiasi tipo di messaggio che desideri con l'aiuto delle seguenti righe di codice:

is_main_query ()) if ($ query-> is_search) $ query-> set ('post_type', array ('post', 'film'));  // Esempio di origine: http://codex.wordpress.org/Plugin_API/Action_Reference/pre_get_posts?>

Ecco! Ora i risultati di ricerca del tuo sito Web includeranno il tipo di post "Film" oltre ai post normali.

Lavorare con le modifiche allo stato delle post

Ci sono in realtà molte azioni per le transizioni di stato post - draft_to_publish, new_to_future, publish_to_private e così via. WordPress raccoglie questo insieme di azioni e lo chiama $ OLD_STATUS _to _ $ NEW_STATUS nel codice.

Ma se hai bisogno di un'azione per tenere d'occhio tutti i cambiamenti di stato, puoi usare il transition_post_status azione.

Invia via e-mail l'amministratore ogni volta che viene modificato lo stato di un post

Immagina di avere un blog multi-autore con tre editori e hai bisogno di informazioni su ogni modifica dello stato del post. In tal caso, puoi utilizzare lo snippet di codice riportato di seguito:

post_type! == 'post') return;  $ title = $ post-> post_title; $ a = get_option ('admin_email'); $ subject = 'Stato post modificato'; $ body = "Hey, \ n \ nLo stato del post \" $ title \ "è stato modificato da \" $ old_status \ "a \" $ new_status \ ". \ n \ nCheers!"; wp_mail ($ to, $ subject, $ body); ?>

Scripting di script per pagine di amministrazione

Se hai mai bisogno di iniettare un file JavaScript nel pannello di amministrazione del tuo sito web, il admin_enqueue_scripts l'azione è per te: questa pratica e piccola azione è responsabile per l'accodamento degli script (e degli stili) all'interno del dashboard di WordPress.

Iniezione di uno script per il post Aggiungi / Modifica schermate

Diciamo che hai creato una meta box speciale ma hai bisogno di un file JavaScript nella cartella del tuo plugin per far funzionare la meta-box. cosa fai? Non si stampa a

'; ?>

Cambia le variabili $ disqus_username $ NUMBER_OF_COMMENTS e sei a posto!

Impostazione dell'utente corrente

Oh guarda, un'azione per una funzione collegabile! WordPress definisce "funzioni collegabili" come questa:

Queste funzioni possono essere sostituite tramite plugin. Se i plug-in non ridefiniscono queste funzioni, verranno utilizzate al loro posto.

E questa pratica piccola azione è una parte del pluggable wp_set_current_user funzione principale, che cambia l'utente corrente per ID o nome.

Rimozione della barra degli strumenti per gli abbonati

Ora non cambieremo l'utente, ma utilizzeremo l'azione e controlleremo le funzionalità dell'utente corrente, quindi disabilitiamo la barra se l'utente è solo un abbonato:

Caricamento plugin

Se hai bisogno di fare qualcosa dopo che WordPress ha terminato di caricare plugin attivati, puoi contare su plugins_loaded azione.

Inizia il tuo plugin

Il modo corretto per inizializzare il plugin e farlo funzionare è agganciare la sua funzione principale a plugins_loaded azione. Qui abbiamo l'esempio più semplice al mondo:

Questo è un testo fittizio!

'; // Esempio di origine: http://www.scratchinginfo.com/common-wordpress-action-hooks-for-plugin-development/?>

Se hai bisogno di un esempio migliore, e sono sicuro che lo farai, dovresti assolutamente dare un'occhiata al "WordPress Plugin Boilerplate" di Tom McFarlin che ha tutto il necessario per costruire un plugin per WordPress con in mente il concetto di programmazione orientata agli oggetti.

Fine della terza parte

Abbiamo esaminato il terzo lotto di 50 azioni 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 queste azioni? Pubblica i tuoi commenti qui sotto; e se ti è piaciuto l'articolo, non dimenticare di condividerlo!