Nove trucchi per WordPress
Visualizzare il nome di una Categoria
Questo snippet, inserito all’interno del Loop, mostra il nome della categoria a cui appartiene il post. Volendo, sono disponibili tutti gli altri dati relativi alla categoria, all’interno dell’array $category[0]
.
< ?php $category = get_the_category(); echo $category[0]->cat_name; // tutti gli altri dati // print_r($category[0]); ?>
Template di Pagina
La struttura di un template di pagina è semplice:
< ?php /* Template Name: La mia pagina */ ?> < ?php get_header(); ?> < ?php get_footer(); ?>
Articolo in evidenza
Con query_posts()
:
< ?php // mostra l'ultimo post nella categoria con id 3 query_posts('cat=3&showposts=1'); ?> < ?php while (have_posts()) : the_post(); ?> < ?php the_excerpt('Continua »'); ?> < ?php endwhile; ?>
Con WP_Query()
:
< ?php // mostra la pagina che ha id 2 $recent = new WP_Query("page_id=2&showposts=1"); while($recent->have_posts()) : $recent->the_post();?> < ?php the_excerpt('Continua »'); ?> < ?php endwhile; ?>
I due metodi sono abbastanza simili, quindi si può usare o l’uno o l’altro indifferentemente.
Oppure agire direttamente nel Loop impostando un contatore $i
:
< ?php $i=1; ?> < ?php while (have_posts()) : the_post(); ?> < ?php if ($i == 1) { ?>< ?php } else { ?>< ?php } ?> < ?php $i++; ?> < ?php endwhile; ?>
Includere un file che si trova nella directory del tema
Utile per includere altri file, diversi dalla sidebar di default e dal footer
< ?php include (TEMPLATEPATH . '/sidebar2.php'); ?>
Marcatori condizionali
< ?php if ( is_front_page() ) { include (TEMPLATEPATH . '/home1.php'); } else { include (TEMPLATEPATH . '/rest.php'); } ?>
Invertire l’ordine degli articoli
Aggiungi nel file index.php
del tuo template questa riga
< ?php query_posts($query_string . "&order=ASC") ?>
prima di
< ?php if(have_posts()) : ?> < ?php while(have_posts()) : the_post(); ?>
Codice più sicuro con wp_specialchars()
per evitare code injections e altri attacchi, usa:
< ?php echo wp_specialchars($s, 1); ?>
invece di:
< ?php echo $s; ?>
Invertire l’ordine dei commenti
< ?php $comments = array_reverse($comments, true); ?> < ?php foreach ($comments as $comment) : ?> < ?php endforeach; ?>
Escludere il primo articolo
Il codice che segue esclude il primo articolo dalla visualizzazione nella pagina:
< ?php $myq = $query_string . 'posts_per_page=10&offset=1'; $posts = query_posts($myq); while (have_posts()) : the_post(); ?> < ?php endwhile; ?>