it.hideout-lastation.com
Paradiso Per Designer E Sviluppatori


Come usare i ganci Action di WordPress nella personalizzazione del tema

I temi figlio di WordPress offrono un modo relativamente semplice per personalizzare l'aspetto di un tema. Se le opzioni del tema non forniscono scelte di progettazione adeguate, è sufficiente aggiungere una nuova regola al file di fogli di stile predefinito del tema figlio denominato style.css. Ma cosa succede quando vuoi anche modificare la funzionalità del tema ? Questo è uno dei casi in cui le azioni di WordPress vengono in tuo aiuto.

WordPress è diventato così popolare in parte a causa della sua elevata personalizzazione. Il WordPress Core è caricato con diversi hook che consentono agli sviluppatori di modificare o migliorare la funzionalità predefinita. Inoltre, ci è permesso includere ganci personalizzati nei nostri temi e plugin per aiutare altri sviluppatori a regolare facilmente il nostro codice in base alle loro esigenze .

Informazioni su Hook di WordPress

Gli hook di WordPress funzionano in modo simile ai ganci reali, nel senso che puoi catturare il pesce che desideri nel punto giusto se li usi correttamente.

Puoi rimuovere una funzione catturata (ad esempio puoi rimuovere la barra di amministrazione di WordPress per utenti di basso livello), puoi lasciarla integra e migliorarla con le tue funzionalità (ad esempio puoi aggiungere più menu o aree di widget a un tema), oppure puoi sovrascriverlo (ad esempio puoi modificare il comportamento di una funzione principale).

Esistono due diversi tipi di hook in WordPress: azioni e filtri . In questo post daremo un'occhiata a come possiamo utilizzare gli hook di azione nella personalizzazione del tema .

Come funzionano gli ami WordPress

Per utilizzare un linguaggio molto semplice, le azioni indicano che qualcosa è accaduto durante il ciclo di vita della pagina WordPress : alcune parti del sito sono state caricate, determinate opzioni o impostazioni sono state configurate, plug-in o widget sono stati inizializzati e così via.

I filtri sono diversi dalle azioni nella loro natura. Sono utilizzati per passare i dati e modificarli, gestirli o intercettarli prima di renderli sullo schermo o salvare i dati dell'utente nel database.

A ogni punto di riferimento significativo del ciclo di vita della pagina WordPress c'è o un'azione o un hook di filtro al quale possiamo aggiungere il nostro codice personalizzato per modificare il comportamento predefinito in base alle nostre esigenze.

Alcune azioni e filtri in esecuzione durante una richiesta dipendono da quale pagina è stata richiesta dall'agent user: ad esempio in un singolo post sono disponibili hook relativi ai singoli post, ma hook relativi ad altre parti del sito (ad esempio l'area admin) non lo sono.

Trova ganci d'azione

Il riferimento all'azione del codice WordPress offre una panoramica dettagliata delle azioni che attraversano diverse richieste. L'importante è che, se vogliamo svolgere un compito, dobbiamo agganciarlo nel posto giusto, non prima o dopo, altrimenti l'azione non sarà completata.

Ad esempio, se vogliamo aggiungere il nostro codice di Google Analytics a un sito, dobbiamo agganciare la nostra azione immediatamente prima del caricamento del footer .

Se parliamo di personalizzazione del tema, i hook di azione possono venire da due diversi punti: da WordPress Core e dal tema stesso . Ci sono temi che non hanno hooks, ma altri forniscono agli sviluppatori alcuni o molti - è sempre la scelta dell'autore del tema. Il Twenty Fifteen Theme predefinito ha solo un hook di azione per la personalizzazione del footer sotto il nome di 'twentyfifteen_credits'.

Se ti piace sfogliare il codice sorgente, puoi anche trovare facilmente i ganci di azione. I ganci di azione vengono aggiunti al codice con la funzione WordPress do_action ().

Se si esegue una ricerca rapida dell'espressione "do_action" in un editor di codice più avanzato, come ho fatto in Eclipse di seguito, è possibile visualizzare un elenco degli spot in cui è possibile collegare le funzionalità personalizzate al nucleo. Ho cercato nella cartella / wp-includes /, ma puoi anche eseguire una ricerca per la cartella / wp-admin / che contiene i hook di azione relativi al dashboard di WordPress (area admin).

La cosa buona è che i nomi dei ganci di azione sono di solito piuttosto auto-esplicativi, ma di solito c'è un bel commento all'interno del codice che può darti più conoscenza se il dato hook di azione è buono per il motivo per cui vuoi usarlo per .

Ad esempio, il commento del codice prima del hook di azione "widget_init" dice che "si attiva dopo che tutti i widget WordPress predefiniti sono stati registrati". Se si dà un'occhiata al codice prima di questo hook di azione, è possibile trovare l'inizializzazione di tutti i widget WP predefiniti prima di esso - in modo da poter essere sicuri che il commento non sia mentito e se si desidera registrare il proprio widget personalizzato, questo sarà il posto giusto.

In molti casi il codice sorgente ci fornisce molte più informazioni rispetto al Codex, quindi può essere una buona idea imparare come navigare rapidamente in esso.

Aggiungi le tue azioni

Quando si desidera aggiungere la propria azione, è necessario creare una funzione personalizzata e associare questa funzione a un hook di azione specifico utilizzando la funzione WordPress di add_action (). Le azioni personalizzate aggiunte con la funzione add_action () di solito vengono attivate sul posto quando il core chiama la funzione do_action () appropriata.

Vediamo un semplice esempio.

Come trovare il gancio di azione di cui hai bisogno

Diciamo che vuoi aggiungere la tua preferita favicon al tuo sito. Innanzitutto, devi trovare il giusto hook di azione che puoi associare alle tue funzionalità.

Pensiamo. Se volessi aggiungere una favicon a una semplice pagina HTML dove la inseriresti? Certo, devi metterlo dentro il sezione del file HTML con il seguente markup:

Quindi il gancio di azione necessario deve essere correlato al caricamento del file sezione .

(1) Aprire il riferimento di azione e vedere cosa ha da offrire. Siamo fortunati, come se sfogliamo le azioni, possiamo trovarne solo uno, wp_head, che in base al suo nome ha la possibilità di essere correlato al caricamento del sezione.

(2) Per sicurezza, controlliamo la documentazione nel codice WordPress . Il Codex consiglia che "tu usi questo hook avendo la tua funzione echo in uscita nel browser", così ora sembra essere perfetto per noi. Ma controlliamolo nel codice sorgente.

(3) Poiché questo hook non è correlato all'area admin, sarà necessario eseguire la ricerca nella cartella / wp-includes / . Se cerchiamo la parola "wp-head" otterremo molti risultati poiché questa azione specifica viene usata molte volte da WP Core.

Dobbiamo cercare il punto in cui viene definito, quindi cerca l'espressione do_action ('wp_head' . Si noti che non abbiamo completato le parentesi, poiché non possiamo essere sicuri ancora se questa azione ha parametri o meno.

Eclipse restituisce solo un risultato che può essere trovato all'interno del file /wp-includes/general-template.php . Il commento prima della definizione dell'azione d'azione dice che "stampa script o dati nel tag head sul front-end", così ora possiamo essere morti, sicuri che wp_head è l'hook di azione di cui abbiamo bisogno.

Controllo dei parametri

Quando aggiungi le tue azioni, devi anche essere sicuro che il gancio che vuoi utilizzare prenda o meno i parametri. Puoi facilmente scoprirlo guardando la funzione do_action ().

La sintassi della funzione do_action () è la seguente:

 do_action ('name_of_action' [, $ parameter1, $ parameter2, ...]) 

È richiesto solo il nome dell'azione, i parametri sono facoltativi. Se trovi argomenti nella chiamata pertinente della funzione do_action (), devi includerli nella dichiarazione della funzione personalizzata che hai creato .

Se non ne trovi, la funzione personalizzata deve funzionare senza argomenti. Nella definizione do_action () del hook di azione wp_head, non ci sono parametri.

Confrontiamolo con un hook di azione che accetta un parametro. L'hook di azione chiamato "wp_register_sidebar_widget" accetta un parametro che devi sempre passare alla funzione personalizzata che associ al gancio.

Vediamo la differenza nella sintassi do_action () dei due casi:

 do_action ('wp_head'); do_action ('wp_register_sidebar_widget', $ widget); 

Nel primo caso non ci sono parametri, quindi la funzione personalizzata utilizzerà la seguente sintassi:

 function my_function_without_parameters () {...} 

Nel secondo caso c'è un parametro che devi sempre passare come argomento nella dichiarazione della tua funzione personalizzata:

 function my_function_with_parameters ($ widget) {...} 

Come agganciare la tua funzione personalizzata

Ora sappiamo tutto di cui abbiamo bisogno. Creiamo la nostra funzione personalizzata che mostrerà una favicon sul nostro sito.

Innanzitutto, crea una nuova funzione senza argomenti, quindi associalla al hook di azione wp_head con l'aiuto della funzione WordPress di add_action ().

 function custom_add_favicon () {echo '  '; } add_action ('wp_head', 'custom_add_favicon'); 

È necessario passare prima il nome dell'azione hook alla funzione add_action () come argomento, quindi è necessario aggiungere il nome della funzione personalizzata .

Questi sono i due parametri obbligatori di add_action (). Ha anche due parametri opzionali, argomenti prioritari e accettati . Vediamo come usarli.

Definisci le priorità

Succede in molti casi che ci siano più azioni legate allo stesso gancio. Quindi quale sarà eseguito per primo ? Qui è dove possiamo usare il parametro facoltativo $ priority della funzione add_action ().

Aggiungiamo la priorità come numero intero positivo, il valore predefinito è 10 . Se vogliamo che un'azione venga eseguita in anticipo, gli diamo un valore più basso, se vogliamo che venga eseguita in un secondo momento, gli diamo un valore più alto.

Quindi se pensiamo che la favicon debba essere presente presto, possiamo migliorare la nostra precedente chiamata a add_action () nel seguente modo:

 add_action ('wp_head', 'custom_add_favicon', 5); 

Si noti che le priorità devono sempre essere impostate relativamente alle altre funzioni personalizzate che utilizzano lo stesso hook di azione.

Aggiungi il numero di argomenti accettati

È necessario aggiungere il numero di argomenti accettati nel caso in cui si utilizzi un hook di azione che accetta parametri. Vediamo l'esempio che abbiamo usato prima.

L'hook di azione 'wp_register_sidebar_widget' accetta un parametro, quindi quando leghiamo la nostra funzione personalizzata a questo hook, dobbiamo anche includerlo come argomento quando chiamiamo la funzione add_action ().

Il nostro codice in questo caso sarà simile a questo:

 function my_sidebar_widget_function ($ widget) {// Il tuo codice} add_action ('wp_register_sidebar_widget', 'my_sidebar_widget_function', 10, 1); 

Nota che dobbiamo anche aggiungere la priorità (qui abbiamo scelto il valore predefinito 10) per assicurarci che WordPress sappia cosa significa ogni parametro. Se omettiamo la priorità, WordPress potrebbe supporre che 1 sia la priorità che non è vera, poiché indica il numero degli argomenti accettati.

Conclusione

Puoi fare molti esperimenti con i ganci di azione nella personalizzazione del tema. Ad esempio, puoi aggiungere i tuoi script personalizzati (JS) e stili (CSS) con l'hook di azione wp_enqueue_scripts o il tuo codice di Google Analytics con l'hook di azione wp_footer.

Non solo è possibile aggiungere le proprie azioni, ma è anche possibile rimuovere funzionalità complete dal core di WordPress con l'uso della funzione remove_action () che utilizza la stessa logica di add_action ().

Se sei un autore di temi e vuoi creare un tema estensibile, può essere una buona idea aggiungere i tuoi ganci di azione personalizzati ai file di modello appropriati con la funzione do_action ().

Se vuoi farlo, pensa attentamente ai parametri che gli altri sviluppatori che useranno il tuo tema dovranno passare come argomenti quando vogliono collegare le loro funzionalità personalizzate.

Durante la progettazione delle posizioni dei ganci di azione personalizzati del tema, non dimenticare che non ha molto senso includere ganci tema personalizzati negli stessi punti in cui lo stesso WordPress Core ha i propri ganci .

Una guida per migliorare le tecniche di ricerca di Google

Una guida per migliorare le tecniche di ricerca di Google

Internet è così pieno di informazioni che è quasi impossibile controllarne i limiti. Ecco perché, i motori di ricerca sono stati sviluppati per mantenere un database di ricerca del contenuto del web . Le persone impiegano l'uso dei motori di ricerca per cercare informazioni sul web.Nel bel mezzo di tutti i motori di ricerca si trova Google, il motore di ricerca più popolare e potente. Si

(Consigli tecnici e di design)

Gmail per Android per ottenere il controllo anti-phishing

Gmail per Android per ottenere il controllo anti-phishing

Poco dopo essere stato colpito da un attacco di phishing sorprendentemente ben fatto, Google ha iniziato a implementare alcune nuove misure di sicurezza specifiche per Gmail per Android che potrebbero fornire agli utenti una panoramica dei potenziali attacchi di phishing.Passando a tutti gli utenti di Gmail per Android entro un paio di giorni, l'applicazione avviserà l'utente ogni volta che farà clic su un link segnalato come fraudolento.

(Consigli tecnici e di design)