WordPress: creare un template single.php diverso per ciascun formato dei post

Come creare un diverso template single.php per ciascuno dei formati dei post di WordPress.

WordPress di Gabriele Romanato

Se il vostro tema supporta i formati dei post, potreste volere un diverso template single.php per ciascun formato. Vediamo come ottenere questo risultato.

Aggiungete il seguente codice al file functions.php:


function single_template_terms($template) {
    foreach( (array) wp_get_object_terms(get_the_ID(), get_taxonomies(array('public' => true, '_builtin' => true))) as $term ) {
        if ( file_exists(TEMPLATEPATH . "/single-{$term->slug}.php") ) {
            return TEMPLATEPATH . "/single-{$term->slug}.php";
        }
    }
    return $template;
}

add_filter('single_template', 'single_template_terms');

Quindi create un template chiamato single-post-format-formato.php, dove formato può essere status, video, aside e così via.

Commenti