Quella riga utilizza due diverse funzioni che richiedono due spiegazioni separate.
__ ()
Questa è una funzione di traduzione. Se le impostazioni sono eseguite correttamente, tradurrà il primo parametro da un elenco di stringhe pre-tradotte. Se un'installazione ha un file con una traduzione compilata da utilizzare per questa funzione, la utilizzerà. Naturalmente, il plugin deve impacchettare la propria traduzione, da cui il secondo parametro. simplr-reg
dice __()
che la traduzione della stringa 'Please fill out this form to sign up for this site'
dovrebbe essere nel file di traduzione associato 'simplr-reg'
(ciò viene fatto in precedenza nel plugin tramite ilload_plugin_textdomain()
funzione).
La funzione quindi restituisce la traduzione. Se non ci sono traduzioni da restituire (ad es. La lingua corrente non ha una traduzione compilata, la stringa non ha una traduzione compilata per quel pacchetto, ecc.), Viene restituito l'input originale.
Quindi per un sito WordPress in inglese, __( 'This', 'simplr-reg' )
è funzionalmente uguale a 'This'
. Per saperne di più su l10n (Localizzazione), leggilo nel codice:
http://codex.wordpress.org/I18n_for_WordPress_Developers
apply_filters ()
Questa funzione consente di filtrare i valori utilizzati dal plug-in in base alle esigenze. Questo è uno dei concetti principali da comprendere come sviluppatore di plugin. WordPress è esteso tramite hook, che sono fondamentalmente punti di accesso che consentono di programmare l'esecuzione delle azioni del plug-in e / o manipolare informazioni / dati utilizzati da WordPress, ecc.
Per manipolare dati come lo snippet di codice di cui hai chiesto, devi usare la funzione add_filter()
. Ecco un esempio di base di come funziona:
add_filter( 'simplr-reg-instructions', 'wpse16573_my_filter' );
Probabilmente riconoscerai il primo argomento lì. È lo stesso usato add_filter
sopra. Questo è il nome hook. Il secondo argomento è il callback del filtro. Deve essere un callback valido per una funzione ( leggi di più sui callback qui ). Quella riga di codice dice "Quando 'simplr-reg-instructions'
viene eseguito l' hook, esegui la funzione con il callback che ho fornito." apply_filters()
esegue l'hook trovato nel suo primo argomento, significando essenzialmente "esegui tutte le funzioni registrate per questo hook". apply_filters
quindi passa tutti gli altri argomenti (in questo caso 'Please fill out this form to sign up for this site'
) alle funzioni su quel filtro. Quindi, il callback che ho usato sopra dovrebbe assomigliare a questo:
function wpse16573_my_filter( $text ){
$text = "<strong>$text</strong>";
return $text;
}
Esistono due tipi di hook in WordPress: i filtri (il tipo che stiamo usando qui) e le azioni. La differenza principale tra i due è che i filtri si aspettano che tu restituisca qualcosa e le azioni no. Quindi, per questo filtro, il mio esempio sopra aggiunge qualche HTML in giro 'Please fill out this form to sign up for this site'
e lo restituisce.
Maggiori informazioni su azioni e hook qui:
http://codex.wordpress.org/Plugin_API