Concedete una pausa al file functions.php

Ryan, di WPCandy, chiama il file functions.php di WordPress the poor guy e scrive che si merita una pausa. E ha ragione. Qualche mese fa scrissi un post invitando coloro che aggiungono funzioni aggiuntive al proprio blog utilizzando questo file a crearsi un plugin apposito che le contenga. Nel suo post Ryan tratta questo argomento e lo estende in maniera interessante.

Crearsi un plugin per le funzioni personalizzate

Non aggiungete funzioni personali al file functions.php del tema, ma createvi un vostro plugin che le contenga. È davvero facile farlo.

Ricorderete che nel mio post precedente consigliavo di aggiungere una funzione personalizzata in un plugin apposito, destinato a raccogliere tutte le funzioni che volete aggiungere al vostro blog. Dovrete creare da voi stessi questo plugin e non è per nulla difficile. In questo modo, quando vorrete aggiungere una nuova funzione globale del blog (per “globale” intendo che non sia legata specificamente al tema che state usando), vi basterà aggiungerla in coda alle altre e sarà subito disponibile. In aggiunta, se cambiate tema, le funzioni saranno sempre disponibili e, se dovete disattivarle, vi basterà disattivare il plugin.

Vediamo come si fa.

Leggi tutto “Crearsi un plugin per le funzioni personalizzate”

Il nuovo menu di navigazione di WordPress

Come Ubuntu block notes ha implementato la nuova funzione per la creazione dei menu.

Probabilmente non se ne accorgerà nessuno, ma da oggi questo blog utilizza il nuovo menu di navigazione di WordPress. Erano anni che si attendeva: se in un blog bisognava rivedere l’ordinamento di tutta la sezione delle pagine statiche, era un vero incubo e bisognava farlo rinumerandole a mano (oppure utilizzando un plugin come PageMash). Oggi basta trascinare le varie voci su è giù per fare la stessa operazione.

L’utilizzo della funzione è semplice. Innanzitutto va reso compatibile il tema inserendo questa riga in functions.php:

add_theme_support( 'nav-menus' );

Da questo momento WordPress attiverà il relativo sotto-menu in Aspetto. Con questa nuova funzione potrete inserire tra le voci di menu non solo le solite pagine statiche, ma qualunque collegamento vi salti in mente: link ad articoli, a categorie, a tag, a ricerche, a siti esterni. Di fatto questa funzione rende obsoleti alcuni template appositi che mi ero creato.

Una volta finito il menu, bisogna inserire nel punto desiderato la riga:

<?php wp_nav_menu(); ?>

Ci sono ovviamente una serie di parametri per personalizzare il menu: nel Codex trovate spiegata ogni cosa. A me è bastato inserire:

<?php wp_nav_menu(array(
	'container_class' => 'pagemenu',
	'menu_class' => 'sf-menu'
)); ?>

per riavere lo stesso menu di prima, compreso l’effetto di apertura di Superfish.

L’unico inconveniente, per adesso, è che nelle pagine madri rispetto ad altre non viene inserita la vecchia classe parent e ancestor: quindi chi come me evidenziava le pagine di livello superiore, per ora non potrà farlo. C’è una segnalazione aperta con alcune informazioni interessanti.
Un altro cambio ha interessato la classe delle voci di menu: da page_item e current_page_item si è passati a menu-item e current-menu-item, con la conseguenza di rivedere alcuni stili del CSS.

WordPress 3.0 e la nuova funzione comment_form

WordPress 3.0 ha aggiunto una nuova funzione per generare il form dei commenti che sostituisce del tutto un pezzo di codice da sempre usato nei temi di questo CMS.

Tra le cose nuove che troverete nell’imminente versione 3.0 di WordPress ce n’è una che renderà più puliti i nostri temi e faciliterà il lavoro agli sviluppatori di temi e di plugin. Tutto quel codice che genera il form per i commenti e che si trova nel file comments.php può essere eliminato per far spazio a una semplicissima funzione. Il codice cui mi riferisco è quello che inizia e termina con queste righe:

<?php if ('open' == $post->comment_status) : ?>
<div id="respond">...
...
<?php endif; // if you delete this the sky will fall on your head ?>

La nuova funzione è:

<?php comment_form(); ?>

Di questo argomento ha parlato già @ottodestruct nel suo articolo WordPress 3.0 Theme Tip: The Comment Form, di cui vi consiglio la lettura se avete mai creato un tema per WordPress.

Ho implementato la funzione in Ubuntu block notes utilizzando anche qualche filtro e un’azione, che mi hanno restituito il form così com’era prima. La funzione è infatti estremamente personalizzabile: potete aggiungere campi, toglierne, aggiungere note prima e dopo i campi e prima e dopo il form, cambiare il titolo, il testo del pulsante e qualunque riga già presente, aggiungere azioni in molti punti del form.

Il consiglio per chi sviluppa temi è di usare questa funzione nei loro lavori. Una conseguenza diretta, oltre alla maggiore pulizia del codice, è la possibilità per chi sviluppa plugin di modificare alcuni aspetti del tema senza che l’utente metta mano al codice.

WordPress e Youtube: funzioni e shortcode

L’oEmbed di YouTube non produce markup HTML valido e il video risultante rimane sempre in cima ad ogni altro elemento della pagina, compreso un menu a discesa. Nell’articolo trovate una serie di nuove funzioni ad hoc con cui risolvere il problema in maniera elegante.

Sulla scia del post precedente, completo quanto già scritto con alcune indicazioni che magari possono tornare utili. L’argomento riguarda sempre WordPress e YouTube e come pubblicare un video evitando i problemi evidenziati prima. Alla funzione dell’articolo precedente qui aggiungo una carrellata di altre funzioni o, per essere più precisi, la medesima con alcune differenze: a seconda dei casi, può tornare utile l’una o l’altra.

Queste funzioni vanno inserite nel file functions.php del proprio tema: si scelga quella che più è congeniale con ciò che si deve fare o, se si vuole, possono essere usate tutte contemporaneamente.

Leggi tutto “WordPress e Youtube: funzioni e shortcode”