Jquery e Wordpress: l'uso del no-conflict

Jquery e Wordpress: l'uso del no-conflict

Data di pubblicazione: 14-06-2014

Sempre un maggior numero di programmatori e sviluppatori web utilizza la piattaforma WordPress per la realizzazione dei propri blog o per i loro siti Internet, sia personali sia commerciali. WordPress è un cosiddetto software di "personal publishing" con cui poter creare da zero pagine Internet, ed un ottimo CSM (Content management System). È sviluppato in linguaggio PHP (Hypertext Preprocessor) ed utilizza uno o più database in MySQL, uno dei più diffusi Relational Database Management System (RDBMS).

WordPress si è diffuso molto velocemente in questi ultimi anni tra gli utenti di Internet grazie soprattutto alla sua semplicità di utilizzo ed alla velocità con cui è possibile gestire ed aggiornare i contenuti pubblicati sulle pagine web. Questo sistema nasconde però anche qualche "complicazione", evidenziata da chi vuole implementare particolari funzioni come ad esempio gli script realizzati in jQuery, risolvibile però con il metodo noConflict().

jQuery è un framework, cioè una libreria che raccoglie un grande insieme di funzioni implementabili su pagine Internet, il cui utilizzo semplifica di molto la programmazione delle pagine create in HTML. Gli script realizzati in jQuery vengono normalmente inclusi nel codice di blog o di siti Internet per la creazione di form, di pulsanti, di menu o per realizzare particolari effetti visivi come le dissolvenze e le trasparenze. La caratteristica principale di questo framework è infatti quella di rendere possibili moltissime operazioni tra di loro differenti, scrivendo solamente poche righe di codice supplementare.

A volte, come molti programmatori e sviluppatori web hanno avuto modo di sperimentare, l’inserimento degli script realizzati in jQuery all’interno di WordPress risulta molto complesso, causando malfunzionamenti e conflitti. Questo è dovuto all’utilizzo del simbolo "$" nella sintassi del codice. jQuery utilizza infatti questo simbolo per definire il nome di una funzione o di una variabile, purtroppo però, la stessa semantica è seguita anche dalle librerie javascript incluse in WordPress.

Il simbolo "$", che istanzia molti oggetti, ricopre il ruolo di "alias" per la dicitura "jQuery". Questo rischia di creare numerosi conflitti, soprattutto quando si ha intenzione di utilizzare librerie differenti, create "ad-hoc" o scaricate da siti terzi per includere un grande numero di script o di plug-in all’interno di una pagina Internet.
Per evitare queste problematiche dovute ad una errata interpretazione del codice da parte del compilatore, che rischiano di non permettere la corretta visualizzazione del sito o del blog o di renderli particolarmente instabili, esistono vari metodi anche molto complessi. Uno dei più semplici ed immediati è sicuramente l’utilizzo del metodo noConflict() messo a disposizione da jQuery.

L’implementazione di questo metodo all’interno del codice avviene grazie all’inserimento di una sola riga che ne permette così la corretta integrazione: var $nuovo = jQuery.noConflict(). Implementando questa variabile si fa in modo che la funzione "$()" non venga più interpretata in modo inesatto durante l’esecuzione degli script, rendendo la pagina web efficiente e funzionale. Il segreto del metodo noConflict() è la sostituzione del simbolo "$" con la parola "jQuery", differenziando in questo modo le funzioni e le variabili che contengono questo simbolo.

Per i programmatori e gli sviluppatori più esperti può essere utile sapere che questo semplice metodo permette anche il contemporaneo utilizzo di più librerie "Prototype" per lo sviluppo di applicazioni web dinamiche.