sábado, 17 de marzo de 2012

Hoy en AyudaWordPress.com

Hoy en AyudaWordPress.com

Link to Ayuda WordPress

Numeración autoincremental en los títulos de las entradas

Posted: 17 Mar 2012 05:03 PM PDT

Vale que este truco es muy especialito, quizás un poco exclusivo para usos igual muy concretos, pero seguro que se te ocurre en qué situaciones puede ser útil, a mi se me ocurren unas cuantas.

Por ejemplo, en publicaciones académicas donde cada entrada deba seguir una numeración para tener identificado el número de publicaciones, o en un blog de proyecto, y muchas cosas más.

El caso es que si quieres que en tus títulos aparezca un número, que se incremente solo en cada nuevo artículo puedes hacerlo, solo te llevará un par de pasos:

1. Crea la función

Lo primero es crear la función y guardarla en el archivo functions.php o tu plugin de funciones, que sería así:

//Numeración autoincremental en los títulos function updateNumbers() {     global $wpdb;     $querystr = "SELECT $wpdb->posts.* FROM $wpdb->posts WHERE $wpdb->posts.post_status = 'publish' AND $wpdb->posts.post_type = 'post' ";     $pageposts = $wpdb->get_results($querystr, OBJECT);     $counts = 0 ;     if ($pageposts):     foreach ($pageposts as $post):     setup_postdata($post);     $counts++;     add_post_meta($post->ID, 'incr_number', $counts, true);     update_post_meta($post->ID, 'incr_number', $counts);     endforeach;     endif; }  add_action ( 'publish_post', 'updateNumbers' ); add_action ( 'deleted_post', 'updateNumbers' ); add_action ( 'edit_post', 'updateNumbers' );

Guardas los cambios y vamos al segundo paso …

2. Modifica el loop

Ahora lo que toca es modificar el loop de tu index.php, single.php, archive.php y el resto donde haya loop en que aparezcan títulos (por ejemplo taxonomy.php u otros) para que, al recuperar el título de la entrada añada el número generado.

De este modo, donde encontremos este código … 

<?php the_title(); ?>

Lo sustituiremos por este otro:

<?php echo get_post_meta($post->ID,'incr_number',true); ?>

Guardas y ya está :)

No hay comentarios:

Publicar un comentario

Seguidores

Archivo del blog