- by Roberto Paolucci
- 16 Settembre 2023
DeveloPress.it sta caricando
Tempo di lettura: 2 minuti
Nello sviluppo di plugin per WordPress, l’hook admin_menu
riveste un ruolo fondamentale per la personalizzazione dell’interfaccia amministrativa. Questo hook consente di aggiungere, modificare o rimuovere voci di menu e sottomenu nel pannello di amministrazione di WordPress. In questo articolo, esploreremo in dettaglio l’utilizzo dell’hook admin_menu
e forniremo esempi concreti per illustrarne l’applicazione pratica. Inoltre, discuteremo anche gli hooks save_post
e wp_head
per comprendere ulteriormente il loro ruolo nel contesto dello sviluppo dei plugin.
L’hook admin_menu
consente di aggiungere elementi di menu personalizzati al pannello di amministrazione di WordPress. Per utilizzare questo hook, è necessario registrare una funzione che verrà eseguita quando l’hook viene attivato. Di seguito è riportato un esempio di codice che aggiunge un nuovo sottomenu denominato “Impostazioni del Plugin” nel menu “Impostazioni”:
function plugin_menu() {
add_options_page(
'Impostazioni del Plugin',
'Plugin',
'manage_options',
'plugin-settings',
'plugin_settings_page'
);
}
add_action('admin_menu', 'plugin_menu');
In questo esempio, la funzione plugin_menu()
viene registrata con l’hook admin_menu
. Quando l’hook viene attivato, la funzione viene eseguita e crea un nuovo sottomenu denominato “Impostazioni del Plugin” all’interno del menu “Impostazioni”. Il sottomenu è associato alla funzione plugin_settings_page()
, che definisce il contenuto della pagina delle impostazioni.
Oltre all’hook admin_menu
, altri hooks comuni nello sviluppo di plugin per WordPress sono save_post
e wp_head
. L’hook save_post
consente di eseguire azioni specifiche dopo che un post viene salvato o aggiornato. Di seguito è riportato un esempio di codice che salva il valore di un campo personalizzato quando viene salvato un post:
function save_custom_field($post_id) {
if (isset($_POST['custom_field'])) {
$custom_field_value = sanitize_text_field($_POST['custom_field']);
update_post_meta($post_id, 'custom_field', $custom_field_value);
}
}
add_action('save_post', 'save_custom_field');
In questo esempio, la funzione save_custom_field()
viene registrata con l’hook save_post
. Quando viene salvato un post, la funzione viene chiamata e salva il valore del campo personalizzato, identificato come ‘custom_field’, utilizzando la funzione update_post_meta()
.
L’hook wp_head
consente di iniettare codice personalizzato nell’elemento <head>
delle pagine del sito. Di seguito è riportato un esempio di codice che aggiunge un tag <meta>
personalizzato nell’elemento <head>
:
function add_custom_meta_tag() {
echo '<meta name="custom-meta" content="valore-meta" />';
}
add_action('wp_head', 'add_custom_meta_tag');
In questo esempio, la funzione add_custom_meta_tag() viene registrata con l’hook wp_head. Ogni volta che viene generata una pagina del sito, la funzione viene eseguita e aggiunge il tagpersonalizzato nell’elemento. Conclusioni Gli hooks sono strumenti essenziali nello sviluppo di plugin per WordPress, consentendo la personalizzazione e l’estensione del funzionamento del CMS. L’hook admin_menu è particolarmente utile per la creazione di menu e sottomenu personalizzati nel pannello di amministrazione. Inoltre, gli hooks save_post e wp_head offrono la possibilità di eseguire azioni specifiche durante il salvataggio di un post e l’inclusione di codice personalizzato nell’elemento, rispettivamente. Comprendere e utilizzare correttamente questi hooks è fondamentale per uno sviluppo efficace di plugin avanzati per WordPress.
Non faccio grandi cose ma piccole cose che sembrano funzionare bene.
Roberto Paolucci