El amigo Alberto de Freak Evolution me mandó un mail la semana pasada preguntando cómo tengo montado el percal de los miniposts aquí en RUDEWORKS. Se me ocurrió que dedicándole un post (van a ser un par, porque es probable que me extienda) mataba dos pájaros de un tiro, resuelvo las dudas de Alberto y pongo algo de contenido propio en el blog. Comencemos.
En RUDEWORKS hay dos tipos de miniposts, los que escribo directamente igual que los posts y los que vienen de Twitter. La primera duda de Alberto era si estaba usando algún plugin para generarlos, la respuesta es no, al menos en uno de los casos. En este artículo voy a explicar cómo incluyo los que escribo igual que posts.
Lo primero que hice fue crear una categoría llamada ‘Miniposts’ (podría haberla llamado Joaquín, eso no importa en absoluto). En segundo lugar, quería que estos artículos tuvieran un aspecto diferente dentro del loop de WordPress, así que me dispuse a editar el index.php de mi tema.
Diferenciando categorías
Dentro del loop diferenciamos la categoría de miniposts de la siguiente manera:
<?php while (have_posts()) : the_post(); ?>
<?php if (in_category(‘12’)) { ?> /* Preguntamos a qué categoría pertenece el post, en este caso el ID de la categoría Miniposts es 12 */
/* Aquí el layout de los miniposts */
<?php } else { ?> /* Si pertenece a cualquier otra categoría */
/* Aquí el layout de los posts normales */
<?php } ?>
<?php endwhile; ?>
/* Aquí va la navegación, como siempre */
<?php endif; ?> /* Cerramos el loop */
El layout del minipost
Si os habéis fijado, según el tipo de minipost aparece un icono diferente, los hay de recursos varios (con un globito), de links favoritos (con un corazoncito) y de recursos de programación (con unos brackets). Para esto me hice un custom field con el nombre ‘Minipost tipo’:
$minipost_tipo = get_post_meta($post->ID, ‘Minipost tipo’, ‘true’); /* Recojo el valor del custom field ‘Minipost tipo’ y le doy nombre */
printf(‘<div class="minipost '.$minipost_tipo.'"><div class="entry"><p>’); /* Abrimos el div contenedor. printf es lo mismo que echo, pero se utiliza para incluir variables, en este caso utilizan el valor del custom field para dar una u otra class al div contenedor */
echo wptexturize($post->post_content); /* Incluyo SOLO el contenido del post, nada más, para eso es ‘mini’ ;-) */
printf(‘</div></p></div>’); /* Cerramos el div */
?>
Para la tarea de rellenar en cada uno de los tres casos el custom field, utilizo un estupendo plugin llamado Fresh Page (que es una combinación de otros tres plugins), que básicamente te permite crear páginas de generación y edición de posts personalizadas.
Ahí queda eso, espero que resulte de ayuda. En la segunda parte del artículo os mostraré cómo importo los posts en Twitter (o desde cualquier otro servicio que te permita publicar sus contenidos en feeds) como miniposts.
Actualización (24/01/2008): Ya está disponible la segunda parte del tutorial.
12/07 - 20:17
En el momento que has soltado tan tranquilamente “me creo un custom field y pim pam”, me han explotado las rodillas.
Crack que estás hecho jodío ;) Gracias por la info.
12/07 - 23:46
El que sabe, sabe.
13/07 - 2:54
Rude, pero esos minipost no se ven bien en google reader…
13/07 - 12:33
Skeku: A tí te explotan las rodillas cada veinte segundos, no le eches la culpa a mis sobradas.
Felipe del Pozo: Se agradece el piropo.
esteb: ¿A qué te refieres? En Google Reader se ven como un post normal. ¿Cómo los preferirías?
14/07 - 18:49
Yo es que soy así de preguntón. Una explicación chachipirulesca que voy a poner en práctica a la de YA.
Gracias master.
14/07 - 20:16
Muy bueno y curioso uso de los custom fields. Quizás sería más sencillo en cuanto a recursos usar otras categorías y combinar if’s pero en cuanto a código esto es lo más limpio.
Yo uso custom fields en un par de cosillas y el único problema que me plantean es que se dejen de ofrecer plugins estilo Fresh Page para facilitar el manejo.
15/07 - 1:04
Aquí tienes un nuevo seguidor. Muy interesante lo que comentas ;-)
21/07 - 16:03
Wow, quedan geniales. Estoy impaciente por ver la segunda parte ^^ .
09/07 - 0:25
Uff Hermano, con este detalle de los mini posts, le da un buen detalle al sitio, gracias por el tip. Saludote.
03/07 - 18:57
hola, como has introducido los avatares?
Me gusta