26Sep 2010 4 Comments */?>

12 Trucos para sacarle más jugo a tu WordPress

Categorías: Wordpress - Tags: , ,

Acá les traigo un recopilatorio de “trucos” y códigos de wordpress que he ido usando a través del tiempo. Desde mostrar los últimos tweets a mostrar posts aleatorios en nuestro sidebar.

Son muy fácil de implementar en nuestros templates y nos sirve para aprender un poco más acerca de este fabuloso CMS y no andar siempre instalando plugins y más plugins. ¿ Ustedes que trucos usan en sus blogs?

1. Mostrar los últimos tweets en el sidebar

Para ello debemos añadir un par de lineas de Javascript, cambiar “username” por tu nombre de usuario , condimentar con un poco de CSS y todo estará listo. Como siempre recomiendo insertar el javascript justo antes de la etiqueta </body> por si Twitter anda medio lento no ralentice la carga de nuestra web.

1
2
3
4
<ul id="twitter_update_list">
</ul>
<script type="text/javascript" src="http://twitter.com/javascripts/blogger.js"></script>
<script type="text/javascript" src="http://twitter.com/statuses/user_timeline/username.json?callback=twitterCallback2&count=3"></script>

Nota: Si quieren seguir mi recomendación habría que insertar el javascript en footer.php y la lista html <ul> en sidebar.php de su theme de wordpress

2. Mostrar 5 post de forma aleatoria en el sidebar

Con este pequeño código podemos obtener y mostrar los últimos artículos de nuestros blog, o mostrar cierta cantidad de forma aleatoria usando orderby=rand

1
2
3
4
5
6
7
8
<ul>
 <?php
 $rand_posts = get_posts('numberposts=5&orderby=rand');
 foreach( $rand_posts as $post ) :
 ?>
    <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
 <?php endforeach; ?>
    </ul>

4. Resaltar los comentarios del autor

Para destacar un poco se puede resaltar los comentarios del autor de forma que al responder comentarios en nuestros artículos sepan diferenciarlos bien. Les dejo un ejemplo de como quedaría sacado del blog de Matt:

Para ello creamos en el style.css de nuestro template la siguiente clase:

1
.authorstyle { background-color: #B3FFCC !important; }

Después de esto buscamos el archivo comments.php y reemplazamos esto:

1
<li <?php echo $oddcomment; ?>id="comment-<?php comment_ID() ?>"></li>

Por esto:

1
<li class="<?php if ($comment->user_id == 1) $oddcomment = "authorstyle"; echo $oddcomment; ?>"></li>

Hay que reemplazar el user_id por el número que te corresponda, en lo general el admin es “1”.

5. Mostrar el número de seguidores de twitter

Con este código pueden mostrar en su blog cuantos seguidores de Twitter tienen actualmente sin tener que usar el plugin de Twitter. Ideal para adaptar el contador al diseño de sus blogs.
Primero tenemos que crear twitter-cont.php y pegamos el siguiente código reemplazando “USERNAME” por tu cuenta de twitter:

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$tw = get_option("twitterfollowerscount");
if ($tw['lastcheck'] < ( mktime()3600 ) )
{
$xml=file_get_contents('http://twitter.com/users/show.xml?screen_name=USERNAME');
if (preg_match('/followers_count>(.*)</',$xml,$match)!=0) {
$tw['count'] = $match[1];
}
$tw['lastcheck'] = mktime();
update_option("twitterfollowerscount",$tw);
}
echo $tw['count'];
?>

Después donde tengamos el contador hacemos lo siguiente:

1
 <?php include("twitter.php"); ?>

6. Mostrar seguidores de feedburner de forma personalizada

Al igual que hicimos con el contador de Twitter , si queremos mostrar los seguidores que tenemos en Feedburner de forma personaliza sin tener que usar el contador que ofrecen por defecto, podemos hacerlo de la siguiente manera:

1
2
3
4
5
6
7
8
9
10
11
12
     <?php
    $whaturl="http://api.feedburner.com/awareness/1.0/GetFeedData?id=TU ID DE FEEDBURNER";
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_URL, $whaturl);
    $data = curl_exec($ch);
    curl_close($ch);
    $xml = new SimpleXMLElement($data);
    $fb = $xml->feed->entry['circulation'];
    echo $fb;
 
    ?>

7. Hacer un listado de categorías personalizado

Si queremos mostrar en el sidebar o en otro lado un listado de las categorías personalizado podemos usar el siguiente código:

1
2
3
<ul class="navmenubar" style="float:left; width:730px;">
<?php wp_list_categories('orderby=name&include=7,9,19,16,1,5,17,23'); ?>
</ul>

Como ven estamos ordenando las categorías por nombre, e incluyendo solo algunas. Podríamos por ejemplo ordenarlas por fecha y decir que nos muestre todas menos la categoría 1 de la siguiente manera:

1
2
3
<ul class="navmenubar" style="float:left; width:730px;">
<?php wp_list_categories('orderby=date&exclude=1'); ?>
</ul>

8. Añadir hojas de estilo css diferentes para cada post

Se fijaron que muchos blogs tienen estilos diferentes para cada post . Por ejemplos los <h3> se ven de una forma en unos y de otra forma en otros. Hacer eso es muy sencillo y tan solo basta con añadir el siguiente código en header.php entre las etiquetas <head> y </head>

1
2
3
4
5
6
7
8
<?php if (is_single()) {
$customstyle = get_post_meta($post->ID, 'customstyle', true);
if (!empty($customstyle)) { ?>
<style type="text/css">
<?php echo $customstyle; ?>
<style>
<?php }
} ?>

Después cada vez que necesitamos insertar un estilo diferente tenemos que insertar un custom field con el nombre de customstyle y añadimos el css necesario como muestra la siguiente imagen.

9. Cargar diferentes headers, footers o sidebars según la categoría

Si quieren darle un toque más distinguido y mostrar diferentes footer según la categoría que se muestre tan solo tendrían que editar en index.php de la siguiente manera:

1
2
3
4
5
<?php if (is_category('Productos')) {
get_footer('productos');
} else {
get_footer();
} ?>

Esto comprueba que sea la categoría “Productos” y añade footer-productos.php . En caso contrario añade footer.php
Las template tags tienen un monton de opciones, is_category puede ser usado con un nombre de categoría, un id, o varios juntos.

Lo mismo sería para el sidebar que incluiría sidebar-productos.php

1
2
3
4
5
<?php if (is_category(array(6,'Productos'))) {
get_sidebar('productos');
} else {
get_sidebar();
} ?>

Y para el header que incluiría header-productos.php

1
2
3
4
5
<?php if (is_category(array(6,'Productos'))) {
get_header('productos');
} else {
get_header();
} ?>

10. Mostrar categorías en una lista desplegable

Hay veces que tenemos muchas categorías o simplemente no queremos ocupar tanto espacio de nuestro sidebar. Para ello podemos mostrar las categorías de nuestro blog en una lista desplegable:

1
2
3
4
5
6
7
8
<form action="<?php bloginfo('url'); ?>/" method="get">
<?php
$select = wp_dropdown_categories('show_option_none=Select Category&show_count=1&orderby=name&echo=0&selected=6');
$select = preg_replace("#<select([^>]*)>#", "<select$1 onchange='return this.form.submit()'>", $select);
echo $select;
?>
<noscript><input type="submit" value="View" /></noscript>
</form>

11. Usar los permalinks para mostrar urls amigables

WordPress incluye la función de permalinks que nos permitirá mostrar las urls de una forma más amigable para el lector. Entonces en vez de que se vea:

1
http://masquewordpress.com/?p=25

Se verá como:

1
http://masquewordpress.com/tutoriales/actualizar-twitter-a-traves-de-php-y-oauth/

Para ello debemos cambiar los permalinks como se muestra a continuación:

12. Y por último una serie de plugins que recomiendo para mejorar tu wordpress

  • WordPress Related Post: Muestra post relacionados al que estan leyendo de forma automática
  • All in One SEO Pack: Ideal para mejorar el SEO de tu blog.
  • Akismet: Protector de SPAM por excelencia de WordPress.
  • Google Analyticator: Para añadir tu código de Google Analytics en tu web de forma automática y poder así llevar un control de estadísticas completo.
  • WP Super Cache: Aumenta el rendimiento de tu web consumiendo menos recursos al activar el cache.
  • Google XML Sitemaps: Crea un sitemap automáticamente y luego hace ping en los principales buscadores.
  • IntenseDebate: Con este plugins llevas los comentarios a otro nivel.
  • Sociable: Añade la opción de compartir tus posts a las más populares redes sociales.
  • Test it Yourself: Plugin creado por mi, ideal para mostrar ejemplos de html, css , etc en su web y dejar que los usuarios lo prueben.
  • FD Feedburner Plugin: Conviertes tus feeds a feeds de feedburner.

Damián Logghe

Programador freelancer y emprendedor en sueños. Contento de ser mi jefe y poder hacer lo que me gusta. WordPress es mi principal fuente de ingreso y me escribo tanto para ayudar como para tener una guia de memoria. Quieres contratarme? Déjame un mensaje.

More Posts - Website

Follow Me:
TwitterFacebookLinkedInGoogle Plus

  • Pingback: Bitacoras.com()

  • Excelente articulo!!, me fue de gran ayuda….

    Muchas gracias y un saludo

  • excelente lista, me parece similar a la de Honguiat ,pero estaba muy desactualizada.
    saludos.

  • Kushif

    Abosultamente fantástico. Muy útil. Ya que estamos ¿Cómo podría hacer para tener un template en la página de inicio y otro distinto para cuando haces click en el título de un post ? Estoy rebuscando en Content.php pero no acabo de verlo… Mil gracias.