Home News Successo linguaggio PHP: il caso pratico del plugin WordPress
Successo linguaggio PHP: il caso pratico del plugin WordPress PDF Stampa E-mail
Venerdì 17 Aprile 2015 14:00

Successo linguaggio PHP: il caso pratico del plugin WordPress

Il linguaggio PHP sta riscuotendo notevole interesse nel mondo dei programmatori e il motivo non è solo da ricercare nella varietà di ambienti di sviluppo che vengono messi a disposizione di chiunque decida di affrontare un qualsiasi progetto con questo linguaggio e non è neanche da cercare nel tam-tam che si è generato intorno all’edizione di prossima generazione del linguaggio stesso.

Il PHP genera interesse perché ha la fortuna di essere alla base di diverse piattaforme che traggono il proprio successo dal decollo di Internet e dalla necessità di democratizzare l’opportunità di essere presenti in Rete.

Per dirla in maniera più spicciola, parte del grande successo di PHP è dovuto a CMS come WordPress, come Joomla e a piattaforme per e-commerce come Magento e Prestashop che, con i loro moduli, le funzioni, i temi, i template e tanto altro, coinvolgono sviluppatori professionisti e volontari di tutto il mondo.

E la maggior parte dello sviluppo avviene in PHP.

Così, si forma un circolo virtuoso: più cresce l’interesse verso piattaforme come WordPress, più si ha l’interesse di sviluppare nuove funzionalità e, così, di far lavorare programmatori che maneggiano molto bene il PHP.

Se si pensa solo alla mole di funzionalità che esistono per WordPress e Joomla, si capisce come il linguaggio PHP sia onnipresente. E se si considerano i corrispondenti plugin, allora la massa di linee di codice PHP diventa davvero sterminata.

E questa infinità è dovuta anche alla relativa facilità con cui è possibile creare un plugin WordPress in PHP, anche grazie alla modularità del noto CMS di Automattic.

Certo, non si vuole dire che creare un plugin WordPress in PHP sia un’operazione accessibile a chiunque, ma è vero anche che a volte è più semplice di quanto ci si possa immaginare.

Linguaggio PHP e struttura del file di un plugin WordPress

Per quanto possa sembrare assurdo, tutto ciò che in realtà serve per creare un plugin è un solo file PHP. Basterebbe un file creato con il Blocco Note per contenere qualche riga di codice PHP da salvare poi con l’opportuna estensione.

Al di là di questo requisito di inizio lavori così semplice, è buona norma usare un ambiente di sviluppo più completo come un IDE e creare una directory che contenga più file dedicati allo sviluppo del plugin. Per iniziare, si potrebbe creare una directory e dargli un nome che corrisponde a quello scelto per il plugin. Poi, all’interno di quella directory, basta salvare un file PHP principale, ancora una volta nominandolo con il nome dell’add-on, ad esempio hostingtalk-plugin.php.

Se il plug-in è leggermente più complesso e richiede l’uso di immagini, stili CSS, file Javascript e via discorrendo, allora è bene creare delle cartelle dedicate a tutti questi elementi, in cui andare a salvare i file di rispettiva natura.

Ad esempio, all’interno della cartella hostingtalk-plugin è possibile creare 3 directory, quella per i CSS (css), quelle per le immagini (img) e quella per gli eventuali file Javascript (js).

Infine, se l’intenzione è quella di pubblicare il plugin sul repository di WordPress, allora è necessario includere un file Readme.txt compilato secondo questo schema.

I primi passi nel linguaggio PHP per definire il plugin WordPress

Successivamente, è necessario definire il plugin in modo che WordPress lo riconosca e gli permettere di essere installato, attivato ed, eventualmente, rimosso.

Con il proprio ambiente di sviluppo preferito, aprire il file hostingtalk-plugin.php e aggiungere quanto segue alla parte superiore del file:

<?php

/**

*Plugin Name: hostingtalk-plugin

*Plugin URI: URL dove si trovano informazioni sul plugin

*Description: una breve descrizione del plugin

*Version: la versione del plugin

*Author: nome dell’autore del plugin

*Author URI: URL dell’autore del plugin

*License: indicazioni sulla licenza, come, ad esempio, GPLv2

*/

Ogni riga deve essere personalizzata con i dati specifici del plugin. Affinché WordPress riconosca il plugin, è obbligatorio, al minimo, la digitazione del parametro relativo al nome del plugin.

Inzializzare il plugin WordPress con le opportune istruzioni PHP

Ora che WordPress è in grado di riconoscere il plugin, bisogna renderlo operativo. Questo obiettivo si ottiene utilizzando funzioni o agganci detti hooks, ossia delle azioni o filtri predefiniti e resi disponibili in WordPress affinché i programmatori dei plugin li richiamino per comporre il ciclo esecutivo del proprio add-on. Questi hook sono quindi come dei listener di eventi che interessano ogni componente che il core WordPress processa durante l’esecuzione della piattaforma. Ad esempio, se il plugin PHP ha bisogno di eseguire qualsiasi tipo di setup, come la creazione delle tabelle nel database, è possibile sfruttare l’hook di attivazione nel seguente modo:

//INSTALLAZIONE

function hostingtalk_plugin_install(){

//Esegue qualche operazione di installazione

}

register_activation_hook(__FILE__,’hostingtalk_plugin_install');

Poi, quando l’utente attiva il plugin, la funzione che è stata registrata nell’hook di attivazione verrà eseguita.

Si potrebbe anche pensare di registrare alcuni file Javascript su cui si vuole far lavorare il plugin. È possibile utilizzare l’hook add_action, usando anche wp_enqueue_scripts per permettere a WordPress di caricare, eseguire e registrare un determinato script.

//CARICAMENTO SCRIPTS

function hostingtalk_plugin_scripts (){

wp_register_script ( 'hostingtalk_plugin_script' , plugin_dir_url ( __FILE__ ). 'js/hostingtalk.js' );

wp_enqueue_script ( 'hostingtalk_plugin_script' );

}

add_action ( 'wp_enqueue_scripts' , 'hostingtalk_plugin_scripts' );

Infine, si deve permettere al plugin di eseguire effettivamente una qualche azione. È possibile farlo con l’integrazione nel linguaggio PHP dei diversi hook di WordPress, mantenendoli in attesa di un evento appropriato che faccia scattare l’esecuzione. Ad esempio, se si vuole eseguire il plugin ogni volta che un visitatore accede al sito, è possibile utilizzare l’azione init o wp_loaded per attivare il tuo codice:

//HOOKS

add_action ( 'init' , 'hostingtalk_plugin_init' );

/********************************************************/

/* FUNCTIONS

************************************************** ****** /

function hostingtalk_plugin_init(){

//operazioni da compiere

run_sub_process();

}

function run_sub_process(){

//altre operazioni da compiere

}

In questo esempio, la funzione hostingtalk_plugin_init () verrà chiamata a ogni nuova richiesta ed è possibile sviluppare il proprio plugin continuando a seguire questa logica basata sulla consequenzialità e sugli hook degli eventi. Se il plugin è complesso, è possibile aggiungere ulteriori file PHP per creare un’opportuna applicazione avanzata.

Gli hook di WordPress con cui lavorare sono davvero tantissimi e per ottenerne un elenco completo da utilizzare nello sviluppo del proprio plugin PHP, è sufficiente visitare le due seguenti risorse online:

Conoscere bene gli hook è il vero volano che permette di sviluppare in PHP un buon plugin, perdendo il meno tempo possibile in fase di sviluppo.

 

Vhosting“Questo articolo è offerto da VHosting SolutionVHosting Solution è l’azienda con un Data Center ridondato da 300 Gbps, localizzato in Germania, nel cuore dell’Europa, che fornisce in Italia servizi di hosting, domini, server virtuali VPS e server fisici dedicati. Ogni tipologia di servizio si declina in diverse soluzioni dedicate tanto ai professionisti, quanto alle piccole e medie imprese e alle aziende enterprise. Con un uptime controllabile in totale trasparenza direttamente online, attraverso il servizio Hyperspin, VHosting Solution unisce l’affidabilità tecnica e l’assenza di overselling all’economicità delle proposte commerciali, a cui si aggiunge un’assistenza tecnica professionale erogata 24 ore su 24 via Skype e ticket.” 

 

Tutorial

Vuoi approfondire degli argomenti specifici? Segui i miei tutorial, per dubbi o domande contattami.

Vai ai tutorial

Flickr

Guarda le mie foto su Flickr. Hai bisogno di foto particolari? Vuoi imparare a fotografare? Contattami
flickr_logo

Servizi Online

Vuoi predisporre il tuo sito web personalizzato? Hai bisogno di aiuto o consulenza?

Acquista i servizi online

Contattami

Per approfondimenti o informazioni su corsi di formazione o lavori contattami.

Richiedi uno scambio link con il mio sito.