wordpress
PHP & Co

creare un plugin per wordpress

La repository di WordPress brulica di meravigliosi plugin utili ad ogni scopo; tuttavia, per quanto sia effettivamente un’evenienza rara, può anche accadere:

  • di non trovare il plugin di cui si necessiti;
  • di trovarne uno con una funzionalità utile al 99%, ma mancante di quell’1% che ci separa dalla felicità;
  • di trovarne uno articolatissimo e colmo di funzioni inutili, utile per l’1% e superfluo per il 99%;

In questi casi, l’unica soluzione è creare un proprio plugin di WordPress, personalizzato e realizzato ad hoc. L’operazione, in sé stessa, non è per nulla complicata e, in pochi e semplici passaggi, possiamo dar vita al nostro primo plugin.

Ipotizzando che il nostro primo plugin si chiami proprio “il mio primo plugin”, la prima cosa da fare è creare un file vuoto, con estensione PHP, denominato “il-mio-primo-plugin.php”.

Per farlo, possiamo usare il Blocco Note di Windows o, preferibilmente, notepad++ un editor testuale che ci supporta nella scrittura del codice, colorando il testo in relazione alla stringa di programmazione ed alla funzione compilata.

La seconda operazione, altrettanto elementare, prevede la creazione di una cartella con lo stesso nome del plugin, cioè “il-mio-primo-plugin”, all’interno della quale sposteremo il file PHP di cui sopra, cioè “il-mio-primo-plugin.php”

La terza operazione, poco più di un copia-incolla, serve a comunicare a WordPress alcune informazioni di base sul nostro plugin e, soprattutto, a fargli capire che si tratta effettivamente di un plugin per WordPress e non di un generico file vuoto.

Il terzo step prevede l’inserimento del seguente schema di dati all’interno del file PHP “il-mio-primo-plugin.php”:

<?php
/*
Plugin Name: Il Mio Primo Plugin
Plugin URI: http://christiangatti.it/creare-un-plugin-per-wordpress/
Description: Il mio primo plugin, creato grazie all'aiuto di Christian Gatti
Version: 1.0
Author: Christian Gatti
Author URI: http://www.christiangatti.it/
*/
?>

Quanto sopra non fa altro che dire a WordPress che il nostro file è, di fatto, un plugin e che ha un nome ed un autore e che, tramite una serie di collegamenti ipertestuali, possiamo raggiungere l’autore o la homepage del plugin.

Passiamo quindi all’ultima fase, quella più cruciale: diamo una semplice istruzione al nostro plugin, in modo che, una volta attivato, esegua una operazione elementare.

Fortunatamente WordPress ci mette a disposizione alcuni “hooks” (“ganci”) ed alcune“functions” (“funzioni”) che ci aiutano non poco nella compilazione del codice del nostro plugin. Hook e functions sono scorciatoie utili a vari scopi: possono servire per lanciare l’esecuzione di operazioni gestite da WordPress, oppure per ricavare informazioni gestite da WordPress.

Nel nostro esempio, useremo un hook ed una function:

  • la function “add_action” permette di definire un’azione (funzione) da eseguire e di indicare quando (dove) eseguirla;
  • l’hook “wp_footer” che indica il momento in cui va eseguito un comando (nel caso in questione, sotto al footer).

Ipotizziamo che il nostro plugin ci serva per far sì che nella parte inferiore del nostro sito compaia un elemento, con sfondo rosso, contenente la frase “sito protetto da copyright”.

Per fare in modo che, sotto al footer, cioè nella parte inferiore del nostro sito, compaia un elemento, con sfondo rosso, contenente la frase “sito protetto da copyright”, il codice che dobbiamo aggiungere nel file PHP “il-mio-primo-plugin.php” è il seguente:

<?php
add_action ( 'wp_footer','la_mia_prima_funzione' );
function la_mia_prima_funzione () {
echo '<div style="width:100%; height:50px; line-height:50px; text-align:center; background:#ff0000;">';
echo '<span style="color:#ffffff; font-size:25px; font-weight:bold;">sito protetto da copyright</span>';
echo '</div>';
}
?>

Ne consegue che il file “il-mio-primo-plugin.php” ricomprenda, all’interno dei tags PHP, sia le informazioni di base sul plugin, sia le istruzioni sul comando da eseguire.

In definitiva, il nostro file “il-mio-primo-plugin.php” conterrà il seguente codice:

<?php
/*
Plugin Name: Il Mio Primo Plugin
Plugin URI: http://christiangatti.it/creare-un-plugin-per-wordpress/
Description: Il mio primo plugin, creato grazie all'aiuto di Christian Gatti
Version: 1.0
Author: Christian Gatti
Author URI: http://www.christiangatti.it/
*/

add_action ( 'wp_footer','la_mia_prima_funzione' );
function la_mia_prima_funzione () {
echo '<div style="width:100%; height:50px; line-height:50px; text-align:center; background:#ff0000;">';
echo '<span style="color:#ffffff; font-size:15px; font-weight:bold;">sito protetto da copyright</span>';
echo '</div>';
}
?>

Ecco fatto, non ci resta che testare il nostro plugin! Per farlo, è sufficiente comprimere la cartella “il-mio-primo-plugin” in un file .zip e caricare la cartella appena creata su WordPress (Pannello di Amministrazione, sezione Plugin => Pulsante “Aggiungi nuovo” => Pulsante “Carica plugin”).

L’ultima operazione consiste nel comprimere la cartella del nostro plugin in un file .zip e di caricarla su WordPress, nel Pannello di Amministrazione, sezione Plugin => Pulsante “Aggiungi nuovo” => Pulsante “Carica plugin”

Qualora il plugin non sortisse gli effetti sperati, ovvero non comparisse l’elemento colorato con la scritta “sito protetto da copyright”, non sarebbe colpa del plugin, ma di chi ha realizzato il template adottato per il sito. Infatti, affinché l’operazione venga eseguita nella zona del footer occorre che lo sviluppatore del plugin ne abbia prevista una.