Segnalibri al 27 maggio 2010

Un numero dei miei Segnalibri con ben quattro segnalazioni di articoli solo sui Custom post types di WordPress, oltre a uno sulle Custom Taxonomies. Quello più recente mi sembra il più semplice da seguire, firmato da Nettuts+.

  • The WordPress community is buzzing with excitement over the soon-to-be-released WordPress 3.0. Currently in Beta 2 now, WordPress 3.0 will have a lot of exciting new features , such as a new default theme and better menu management. Quite possibly the most exciting of these features is custom post types. In this tutorial, we’ll talk about creating and using custom post types to make a rock-solid theme.

    Tags: wordpress custom-post-type

    27 maggio 2010

  • A volte può tornare utile includere in una pagina il contenuto di un’altra. Ad esempio se avete creato una pagina di registrazione e volote mostrare in un riquadro l’informativa della privacy, sarebbe comodo poter caricare questo contenuta da una pagina esistente.

    Tags: wordpress content page

    27 maggio 2010

Leggi tutto “Segnalibri al 27 maggio 2010”

File condivisi e Dropbox: segnalare i file aperti

Una feature che manca a Dropbox è la segnalazione di un file già aperto da chi abbia accesso a una cartella condivisa. Per ora nel mio gruppo di lavoro eseguiamo questa operazione a mano, ma sarebbe un’ottima funzione da implementare.

Per evitare questo, potete lasciare un voto se pensate che sia utile.

Stallman su software libero e libertà della persona

Onestamente non so se ci sono cose che Gnu/Linux può fare meglio, anche perché non so esattamente cosa possa fare l’iBad. E non posso dire che il nostro software sia sempre migliore di quello proprietario: dipende da quello che ti serve. Ma questo è un problema secondario. Il punto è che se ragioniamo in termini di convenienza, ci sono software migliori e software peggiori. Ma se ragioniamo in termini di etica, noi siamo dalla parte del Bene, loro dalla parte del Male. Dunque il nostro software sarà sempre migliore del loro.
[…]
Qui parliamo di etica. Fare un sacco di soldi con un sistema che calpesta le libertà individuali non va bene, è un attacco alla società nel suo complesso dal quale dobbiamo difenderci con tutti i mezzi. Meglio fare pochi soldi con qualcosa di eticamente sostenibile. Il business viene dopo la libertà.

Richard M. Stallman, Stallman: «iPad? Io lo chiamo iBad» 1

Grazie a Dario Cavedon per la segnalazione.

Note

  1. Il titolo inglese è: Stallman: «The iBad? A serious threat to individual freedom» la cui traduzione italiana è: Stallman: «L’iBad? Una seria minaccia alla libertà individuale».

Cambiare la guid dei post

Come ho provveduto a uniformare la GUID dei post di un blog al valore del suo permalink.

In uno dei siti che gestisco e realizzati con WordPress, avevo l’esigenza di cambiare la GUID di ogni post in modo che combaciasse con il suo ID o, per essere più chiari, con il permalink di default (tipo http://miosito.it/?p=123). Il motivo per cui non combaciava era dovuto all’importazione da un file XML estraneo a WordPress. L’operazione di sostituzione può essere effettuata con gli strumenti che il CMS ci fornisce e, visto che magari vi può tornare utile, questo è lo script che ho usato:

<?php
global $wpdb, $post;
$myposts = get_posts('numberposts=-1');
$i = 0;
$updated = 0;
$not_updated = 0;
foreach($myposts as $post) :
	setup_postdata($post);
	$i++;
	$current_guid = get_post_field('guid', $post->ID);
	$correct_guid = get_permalink($post->ID);
	if ($current_guid != $correct_guid) {
		$where = array('ID' => $post->ID);
		$wpdb->update($wpdb->posts, array('guid' => $correct_guid), $where);
		echo $i.'. GUID del post '.$post->ID.' aggiornato da '.$current_guid.' a '.$correct_guid.'<br />';
		$updated++;
	} else {
		echo $i.'. GUID del post '.$post->ID.' OK<br />';
		$not_updated++;
	}
endforeach;

echo '<p><strong>Risultato:</strong><br />';
echo 'Righe aggiornate: <strong>'.$updated.'</strong><br />';
echo 'Righe non aggiornate: <strong>'.$not_updated.'</strong><br />';
echo 'Totale righe controllate: <strong>'.($updated+$not_updated).'</strong></p>';
?>

In poche parole, lo script confronta il campo guid della riga del post con il permalink (che, anche temporaneamente, va impostato come Default) e, se è diverso, lo adegua. Alla fine dell’operazione, lo script stampa tutte le operazioni eseguite, sia che abbia modificato la riga del database sia che non lo abbia fatto.

Ho utilizzato lo script incollandolo nell’index.php, subito dopo la chiamata all’header. In pochi secondi tutte le migliaia di post avevano la GUID corretta. Per averne anche un riscontro visivo, si può aggiungere all’interno del loop, magari proprio prima del titolo del post, questa riga:

echo get_post_field('guid', $post->ID).'<br />'.get_permalink( $post->ID );

Nel Codex, alla pagina Interfacing With the Database ci sono tutte le informazioni necessarie, in particolare il paragrafo “UPDATE rows”.

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.

Full Circle Magazine n. 32

Abbiamo pubblicato il numero 32 della rivista Full Circle nel sito internazionale. Per il download del PDF fate clic sui link riportati in basso.

Dal sommario

  • Programmare in Python, parte 6
  • Installare pacchetti offline
  • Il server perfetto, parte 2
  • La mia storia: Esperienze in classe
  • La mia storia: Come sono diventata una donna Ubuntu
  • La mia opinione: Può Linux essere sempre la scelta giusta?
  • Recensione: Music Player Daemon
  • Intervista ai MOTU: Roderick Greening
  • Donne Ubuntu: Intervista ad Emma Jane Hogbin
  • Top 5: Media Center

Link

Note
Puoi sfogliare a pieno schermo l’ultimo numero dalla pagina dedicata in questo blog.

Buona lettura! ;)

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.

Segnalibri al 9 maggio 2010

  • Moodle è un Open Source Course Management System (CMS), noto anche come Learning Management System (LMS) o Virtual Learning Environment (VLE). Moodle è una applicazione web libera che i formatori possono utilizzare per creare siti di formazione efficaci.

    Tags: cms moodle learning e-learning

    9 maggio 2010

  • jQuery image galleries and sliders are very common on portfolio sites and are also useful for any other type of site for displaying images and photos. Also, provide a good user experience and make viewing images more pleasant and intuitive on your website. With the advent of powerful JavaScript frameworks like jQuery, Prototype, Mootools etc., the quality of JavaScript based image galleries and slideshows have improved dramatically.

    Tags: jquery images slider gallery

    7 maggio 2010

  • There is little doubt that WordPress is one of the most popular blogging and content management platforms out there today. This is not an article about WordPress, though, but rather a more general musing on one of its thought-provoking taglines: “Code Is Poetry.”

    Tags: wordpress code poetry

    5 maggio 2010

Leggi tutto “Segnalibri al 9 maggio 2010”

Simple Twitter Connect

Integrare Twitter in WordPress tramite il plugin Simple Twitter Connect.

Ho appena installato nel blog un interessante plugin di @ottodestruct che porta una buona integrazione fra Twitter e WordPress. L’ho conosciuto per caso in questi giorni e, conoscendo lo sviluppatore (profondo conoscitore di WordPress nonché moderatore del forum), immaginavo che fosse di ottima qualità e così è stato. Visto che la mia presenza online passa da Twitter come collettore generale, questo plugin giunge a fagiuolo.

Simple Twitter Connect vi consente di:

  1. collegare il vostro blog come applicazione su Twitter;
  2. permettere ai lettori di commentare col proprio profilo Twitter;
  3. inserire nella sidebar attraverso i widgets o manualmente (per chi non li usa) un pulsante per collegare l’account del lettore all’applicazione-blog;
  4. trasformare in collegamenti le citazioni dei nomi di altri utenti Twitter, come @aldolat, aggiungendo anche l’hovercard;
  5. integrare il login di Twitter con il sistema di autenticazione di WordPress;
  6. twittare i nuovi post sia automaticamente che manualmente;
  7. inserire un pulsante TweetMeme.

Tutte queste funzioni sono separate e possono essere attivate singolarmente a seconda di quelle che si vogliono usare. In questo blog sono attive tutte tranne la 5 e la 7, che non ho ancora provato.