Categories
php

Visualizzare le categorie “figlie” in WordPress

Uno dei più stupidi aggiornamenti fatti alle API di WordPress, imho, è stato quello che ha eliminato la possibilità di visualizzare le categorie figlie di una predefinita categoria, senza visualizzare anche quelle “nipoti”.

Infatti usando la comune funzione di WordPress chiamata wp_list_categories() utilizzando il filtro child_of vengono visualizzati tutti i discendenti della categoria indicata e non solo quelli di primo livello, cosa decisamente scomoda se usiamo costrutti molto nidificati.

Per rimediare a questa mancanza ultimamente utilizzo all’interno del file functions.php dei temi che produco il seguente codice che mima il risultato della funzione ufficiale del blog engine, limitandosi però al primo livello di discendenza.

Nulla di trascendentale, insomma, ma sicuramente molto comodo per creare menù contestuali.

[code]
/**
* @param $catID int ID della categoria genitrice
* @param $order string ASC o DESC
* @return $output string lista di link a categorie
*/
function get_category_children_only($catID=0,$order = ‘ASC’) {
global $wpdb;
global $cat;

$output = ”;

if (strtoupper($order) != ‘DESC’) $order = ‘ASC’;

$query = “select t.term_id as term_ids, t.name from $wpdb->terms t, $wpdb->term_taxonomy tx where t.term_id = tx.term_id and tx.taxonomy = ‘category’ and tx.parent = ‘”.intval($catID).”‘ group by t.term_id order by t.term_id $order”;

$results = $wpdb->get_results($query);
foreach ($results as $result) {

if ($cat == $result->term_ids) $selected = ‘ current-cat’;
else $selected = ”;

$output .= ‘

  • term_ids).'” title=”visualizza articoli della categoria ‘.$result->name.'”>’.$result->name.’
  • ‘;

    }

    return $output;
    }
    [/code]

    ciuaz

    Categories
    lifehack tecnologia

    Tanti auguri C64!

    Oggi compie 25 anni il mitico Commodore 64, amico e compagno di infanzia più volte rispolverato durante le torride estati di qualche anno fa per finire giochi abbandonati a metà, come Zack McKracken, Spiderman the (text)Adventure e Zork.

    Adesso riposa, in un baule in cantina, insieme al fido drive 1451-II, un paio di registratori (con azimut diverso per leggere giochi originali e copiati) e una marea di floppy e cassette.

    Chissà se un giorno avrò una casa che mi permetterà di allestire il mio tanto desiderato angolo dei cimeli.

    Intanto mi accontento di usare come suonerie e sveglie del cellulare qualche pezzo storico come la colonna sonora di 1942, Last Ninja e Turrican prese dal mitico C64Remix!

    ciuaz

    Categories
    pensieri

    La nuova enciclica del papa…

    a me, pare ‘nà strùnzata pazzesca!

    e per chiudere il pensiero quoto, appoggio e sottoscrivo il pensiero dello UAAR:

    «Ma come si fa a parlare di fallimento dell’Illuminismo? È all’Illuminismo che dobbiamo la democrazia, la libertà, l’uguaglianza. E poi, sentire parlare di libertà il sovrano di uno stato illiberale, francamente, sembra una contraddizione».

    ciuaz

    Categories
    di tutto un po' lifehack

    Voglio cambiare tema…

    Qualche suggerimento? O faccio come al solito, che mi creo un tema nuovo e poi lo lascio incompleto? :)

    ciuaz

    Categories
    eventi php

    phpDay 2008, il GrUSP riparte!

    Riprende ufficialmente l’organizzazione del phpDay 2008! Da oggi è infatti possibile registrarsi come relatori, sponsor o i semplici visitatori.

    Se siete quindi interessati a partecipare all’evento che si terrà a fine maggio nella Riviera Romagnola (molto probabilmente Rimini) vi chiediamo fin da subito di confermare la vostra presenza, in questo modo il GrUSP potrà prenotare una struttura adeguata alle effettive necessità e ricontattarvi per offerte e sconti per gli alloggi nei pressi della sede della conferenza.

    Maggiori informazioni sul phpDay verranno pubblicate nei prossimi giorni sul sito ufficiale dell’evento.

    Iscrivetevi numerosi!

    ciuaz

    Categories
    di tutto un po' fumetti

    Autorobot, trasformatevi!

    tratto da Noi Robot: autorobot, trasformatevi!

    Stupenda la vignetta qui sopra presa in prestito da Noi Robot, piccolo strip-comic blog dedicato al variegato mondo dei mecha giapponesi.

    Spero che gli autori abbandonino l’interfaccia in flash (che su linux copre i file) e passino ad una versione più leggibile, magari con i feed [volete che vi installi wordpress?] :D

    ciuaz

    Categories
    php tecnologia webdev

    Sviluppo Agile e conferenze agili

    Dilbert e lo sviluppo agile

    Venerdì sono stato all’AgileDay, manifestazione incentrata sullo sviluppo agile e sulle metodologie su cui è fondato.

    La giornata è stata molto interessante, sia per le persone incontrate che per la qualità degli interventi (interessante la modalità openspace dove sembrava di stare più ad un barCamp che ad una conferenza canonica).

    Ma la cosa che più mi è piaciuta è che, riferendosi alle metodologie agili, non si è mai parlato di questa o quella tecnologia, ma si è sempre fatto un discorso incentrato sulle esigenze di chi sviluppa e sulla relativa crescita personale.

    Insomma, una modalità di lavoro più human oriented rispetto al classico approcio waterfall dove è il software al centro di tutto ed una volta deciso di che morte morire, si muore per rispettare scadenze nonostante i cambi di scope dei clienti.

    Fortunatamente però, le metodologie agili stanno sempre prendendo più piede nelle piccole aziende italiane che operano nel web, soprattutto in quelle dove tutto è sempre in costante beta (nella più totale conformità al web 2.0), e fortunatamente ai principi dell’agile manifesto e delle pratiche dell’XP programming si stanno affacciando gli sviluppatori di linguaggi differenti da java (Ruby on Rails, Django e Symfony sono 3 esempi di framework agili basati rispettivamente su Ruby, Python e PHP).

    Vedremo quindi una evoluzione dell’approcio allo sviluppo delle software house italiane? Speriamo.

    Per ora io darò il mio piccolo aiuto alla diffusione di tali pratiche organizzando qualche “workshop agile” durante il prossimo phpDay… ;)

    ciuaz

    Categories
    lifehack tecnologia

    E61i ed SMTP per l’invio della posta

    Dopo una settimana di sclero e di tentativi ho scoperto un fastidioso bug di Symbian che non permette di inviare email, tramite l’SMTP del proprio server di posta, con l’E61i (ma anche con l’E65 ed N95) se è attivata l’opzione “invia una copia a me” (“Send copy to self” nella versione inglese del software) nelle impostazioni della casella.

    La soluzione per ora è semplice, eliminare tale funzionalità ed inserire (a mano) il proprio indirizzo quando desiderate avere una copia delle email inviate.

    Speriamo che Nokia aggiorni presto il software.

    ciuaz

    Categories
    eventi pensieri

    IASummit, l’architettura dell’informazione ha una sua conferenza

    IASummit site Con il delay che mi appartiene in questi gioni scrivo solo oggi della conferenza alla quale ho partecipato la scorsa settimana, l’IASummit 2007.

    Quest’anno l’IASummit si è tenuta a Trento, vuoi per la disponibilità dell’illuminata amministrazione comunale, vuoi per il supporto della regione che per la disponibilità di alcuni organizzatori a dare la presenza fisica nelle varie fasi del progetto.

    L’evento è stato organizzato in grande stile, devo fare veramente i complimenti agli organizzatori (Andrea Resmini, Emanuele Quintarelli, Alberto Mucignat e Luca Rosati) che, nel totale “volontariato” hanno gestito ospiti internazionali, talk di alto livello e oltre 200 partecipanti nel migliore dei modi.

    Categories
    ajax webdev

    Form Ajax “degradabili” con JQuery e JQuery.Form

    La degradazione del codice è un po’ il mio cavallo di battaglia quando discuto con sviluppatori “ajax-centrici” che preferiscono puntare sull’effetto di un fade che sulla usabilità/accessibilità dell’applicazione anche su browser datati o con javascript bloccato (ie. cellulari).

    La libreria JQuery si è, in più occasioni, dimostrata ottima per la gestione della degradabilità del codice ed uno degli esempi più interessanti di questa pratica è il plugin JQuery.Form.

    Il plugin in questione infatti intercetta i normali form html e li ajax-izza automaticamente, permettendo inoltre di abilitare operazioni pre e post invio. Nel caso in cui, per qualche motivo, il motore js non dovesse funzionare allora la form, per nulla toccata dal plugin, continuerà a funzionare come nel sano, vecchio, web 1.0.

    Vediamone un esempio di funzionamento partendo dal tutorial presente nel sito del plugin.