Contenido

aNieto2k 2008 recopilación de este último año

31 dic

+ 12

Bueno, ya va terminando el 2008 y me parece interesante hacer una recopilación de datos interesantes de lo que este año ha significado para aNieto2k. No voy a extenderme mucho ya que es un día para preparar la noche así que allá vamos:

  1. Posts Escritos: 730 (731 contando este) (2007 1.068).
  2. Comentarios: 6.132 (2007 6.762)
  3. Pingbacks/Trackbacks: 2.367 (2007 2.195)
  4. Diferencia de visitas (con 2007): +59,90%

Además de estas cifras, han ocurrido cosas muy interesantes:

  1. Presentamos el nuevo theme
  2. Probamos Google Chrome
  3. Creamos nuestro propio framework javascript
  4. Descubrimos el corazón de WordPress
  5. Tambien probamos Internet Explorer 8 Beta
  6. Intentamos cambiar la forma de leer los feeds (aún podemos hacerlo)
  7. Pasamos la barrera de los 3.000
  8. Vimos frente a frente la verdad
  9. Seguimos la llegada de WordPress 2.7( y explicamos como adaptarnos a él, una y otra vez, incluso una vez más)
  10. Ofrecimos un espacio para promocionar eventos relacionados
  11. Entrevistamos a algunos de los grandes bloggers

Haciendo recuento me encuentro satisfecho por el año que hemos vivido, algo que supondrá un reto para superar en este año que entra.

jQuery Alert Dialogs, reemplazo para alert(), prompt() y confirm()

31 dic

+ 13

jQuery Alert Dialogs, ofrece un reemplazo muy elegante a las funciones alert(), prompt() y confirm() de javascript.

jquery-alert-dialogs

¿Como usarlo?

Simplemente tendremos que añadir estas líneas a nuestro <head /> y dispondremos de esta nuevo funcionalidad.

<script src="/path/to/jquery.js" type="text/javascript"></script>
<script src="/path/to/jquery.ui.draggable.js" type="text/javascript"></script>

<script src="/path/to/jquery.alerts.js" type="text/javascript"></script>
<link href="/path/to/jquery.alerts.css" rel="stylesheet" type="text/css" media="screen" />

Una vez cargados los ficheros necesarios podremos llamar a las funciones que nos mostrarán las alertas.

jAlert()

jAlert es el sustituto de alert() y nos muestra alerta básica con un botón de aceptar para que el usuario acepte que ha visto el aviso.

jAlert('This is a custom alert box', 'Alert Dialog');

jPrompt()

Sustituto de prompt() que nos da la opción de introducir un valor desde la ventana.

jPrompt('Type something:', 'Prefilled value', 'Prompt Dialog', function(r) {
    if( r ) alert('You entered ' + r);
});

jConfirm()

Alternativa a confirm() en la que ofrecemos al usuario la opción de aceptar o cancelar una acción.

jConfirm('Can you confirm this?', 'Confirmation Dialog', function(r) {
    jAlert('Confirmed: ' + r, 'Confirmation Results');
});

Demo

Para verlos funcionando podemos verlos todos reunidos en esta demo que han montado

Consejo de uso

Personalmente estas modificaciones de funciones básicas, siempre me han dado miedo ya que deberían usarse como una alternativa y los sistemas propuestos siempre suelen ser muy dependientes del script, en este caso, si por cualquier cosa no es posible ejecutar jAlert(), jConfirm() o jPrompt() dejaremos de ofrecer al usuario la alerta necesaria para nuestra aplicación, por ese motivo os propongo usas un sistema que convierta esta opción en una alternativa y que en caso de fallar nos muestre su funcionalidad original.

//alert()
var oAlert = alert;
function alert(txt, title) {
    try {
        jAlert(txt, title);
    } catch (e) {
        oAlert(txt);
    }
}
alert("Hola", "Prueba");

//confirm()
var oConfirm = confirm;
function confirm(txt, title, func) {
    try {
        jConfirm(txt, title, func);
    } catch (e) {
        if (oConfirm (txt, title)) func();
    }
}
confirm("Hola", "Prueba", function(){
	alert("Prueba", "Superada");
});

//prompt()
var oPrompt = prompt;
function prompt(txt, input, title, func){
    try {
        jPrompt(txt, input, title, func);
    } catch(e) {
        func(prompt(txt, input, title));
    }
}
prompt("Hola", "Valor", "Prueba", function(r) {
	if (r) alert(r);
});

15 utiles herramientas para usuarios de WordPress

29 dic

+ 15

SixRevisions ha hecho una recopilación de 15 herramientas para usuarios de WordPress que realmente aportan una utilidad al blog. En la lista hay herramientas que no había visto nunca y otras que me han sorprendido de lo que realmente aportan al blog, así que no te pases ni una, no tienen desperdicio.

  1. ScribeFire, convierte tu Firefox en un editor enriquecido conectado a tu blog.
  2. WordPress Helper, toda la documentación de WordPress en tu Firefox.
  3. Screen Grab to WordPress, haz screenshots y envialos directamente a tu WordPress.
  4. WordPress Scanner, revisa la seguridad de tu blog.
  5. Broken Link Checker, plugin que se encarga de revisar los enlaces de tu blog y marcar los que ya no están disponibles.
  6. Google Syntac Highlighter, mejora estéticamente la visualización del código de tus posts. (Alternativas  WP-Syntax, WP-Chili, o SyntaxHighlighter Plus.)
  7. Insights, plugin que te permite enlazar tu contenido con contenido multimédia de sitios como Flickr, Youtube, Wikipedia…
  8. Windows Live Writer, Microsoft nos dá la aplicación necesaria para escribir offline nuestros artículos.(Para Mac tenemos ecto o Thingamablog)
  9. Revision Control, herramienta que permite controlar las revisiones de posts, ideal para blogs con multiples autores.
  10. Organize Series, un plugin ideal para crear series de artículos relacionados entre sí.
  11. WordPress Comment Moderation Notifiers, herramienta con la que podremos moderar nuestros comentarios más rápidamente.
  12. WordPress Comment Ninja, extiende las opciones de moderación de comentarios con este script de GreaseMonkey.
  13. Adserve, controla la publicidad de tuWordpress.
  14. Simple Tags, los tags nunca serán más fáciles, usando el Yahoo Term Extractions API este plugin te sugerirá los tags que poner.
  15. Twitme, postea en twitter desde tu WordPress (Alternativas Twitter for WordPress, Twitter Tools, Twitpress, y SimpleTwitter)

Bordes redondeados con CSS Sprites

29 dic

+ 5

CSSGlobe publica un fantástico tutorial de como crear bordes redondeados con Sprites. Mientras esperamos a border-radius podemos usar esta alternativa que seguro nos sacará de algún problemilla

tyPhoGraphic, transformaciones CSS

29 dic

+ 2

Hace ya muchos meses que venimos hablando las CSS Transformations y tambien de los navegadores que poco a poco se van sumando a esta nueva tecnología. Y es que aunque haya un debate bastante acalorado sobre llevar al nivel del diseño o no los movimientos de los elementos, hay que reconocer que son impresionantes.

tyPhoGraphic es la última herramienta con la que usar estas CSS Transformations  será más fácil todavía, aunque le encuentro 2 grandes problemas:

<div effect="zoomin" duration="1700" >2009</div>
<div effect="zoomout" duration="1600"  start="-200">2009</div>
<div effect="wobble" duration="1000" >2009!</div>
<div effect="shake" duration="1200" >2009!</div>

<div effect="shake" duration="1000" start="200" >Happy </div>
<div effect="waggle" duration="1200" >New</div>
<div effect="waggle" duration="1200" >Year!</div>

<div effect="zoomout" duration="800" start="500" >Party </div>

<div effect="zoomout" duration="400" >like </div>
<div effect="zoomin" duration="400" start="-100" >it's </div>
<div effect="zoomin" duration="800" >1999</div>
<div effect="shake" duration="50000" >

Aquí es donde está el primer problema, la inclusión de nuevos atributos a los elementos HTML nos hará que nuestras páginas no validen. El segundo problema, es que únicamente funciona en navegadores con CSS Transformations, lo que navegadores como Firefox 3.0, IE6, IE7, Opera 9.5,.. no funcionará el siguiente ejemplo.

Yo lo he visto con WebKit/iPhone y he tenido la impresión de estar viendo un video Flash.Sin duda es una muestra de lo que podremos hacer en un futuro.
Via

Alternativas al tag script más rápidas

29 dic

+ 6

Hace unos meses, John Resig nos mostró un sistema alternativo con el que podíamos reutilizar los tags <script /> de nuestras aplicaciones web y así llamar y ejecutar scripts en la misma llamada.

<script type="text/javascript" src="fichero.js" >
   funcion_de_fichero("Hola");
</script>

Hoy via Ajaxian, descubro un sistema basado en window.onload() y esta técnica de Resig.

window.onload = function() {
    var script = document.createElement('script');
    script.src = "sorttable-async.js";
    script.text = "sorttable.init()";
    document.getElementsByTagName('head')[0].appendChild(script);
}
// -- at the end of the script
var scripts = document.getElementsByTagName("script");
var cntr = scripts.length;
while ( cntr ) {
    var curScript = scripts[cntr-1];
    if ( -1 != curScript.src.indexOf('sorttable-async.js') ) {
        eval( curScript.innerHTML );
        break;
    }
    cntr--;
}

Y es que según los resultados de Steven Souders estos sistemas mejoran los tiempos de carga de los ficheros JS.

3 menús contextuales alternativos con jQuery

29 dic

+ 1

¿Te gustaría dotar a tus aplicaciones web de un menú contextual diferente al que ofrece el navegador? Con jQuery tienes 3 herramientas que te permite hacerlo fácilmente. Ojo, creo que es una herramienta que hay que pensarse 2 veces antes de integrarla en una aplicación web.

50 recursos con los que sacarle más partido a Google Analytics

28 dic

+ 2

Si estás usando Google Analytics en tus aplicaciones web y lo usas para sacar reportes necesarios para enfocarlas, sin duda estos recursos te pueden ayudar a exprimir Google Analytics para tenerlo completamente dominado y trabajando a tu merced.

WordPress 2.8 y el generador de themes

28 dic

+ 28

Este artículo ha sido la inocentada del 28 de Diciembre de 2008. Siento las molestias que haya podido originar.

WordPress 2.8 está todavía en fase de análisis y hace unos días nos pedían ayuda para definir que es lo que queremos ver en esta nueva versión. Ryan Boren y Matt Mullenweg comentan que una cosa si que tiene claro y es que han de solventar el problema de creación de Themes.

Al parecer la comunidad de desarrolladores de WordPress está cansado de las limitaciones y problemas que se encuentran a la hora de generar un theme y el nuevo sistema de comentarios no ha ayudado a aliviar a esta comunidad. La crispación y los últimos comentarios contra los desarrolladores de WordPress ha dado lugar a una noticia más que interesante y esperanzadora.

WordPress 2.8 integrará un generador de themes!!

Si al parecer, WordPress integrará un editor WYSIWYG que permitirá generar tus themes arrastrando y modificando opciones desde tu propio blog. La idea es hacer llegar a todo el mundo la capacidad de generar un theme y que la creatividad no se vea limitada por el desconocimiento del código.

La aplicación usará el motor de Microsoft Word para generar las plantillas, Matt asegura que estos será estándares funcionando en todos los navegadores modernos, incluso en dispositivos móviles y que además cumplirá todas las normas de validación necesarias para que la W3C valide el theme.

wordpress-28-theme-editor

Como podemos ver en la imagen, el editor es muy intuitivo y aprovecha el máximo de la pantalla para que la creación de nuestro theme sea una tarea realmente fácil. No será necesario conocer el código de WordPress para generar un theme ya que usando una nueva implementación de Widgets será tan sencillo como arrastrar un widget a la posición que deseemos y voala!!

wordpress-28-theme-editor2

wordpress-28-theme-editor3

Estoy deseando que comiencen a salir las primeras betas para ver que tal va la implementación. Por el momento podemos ver en el SVN los primeros bocetos, que aunque no guarda los ficheros nos permite generar un theme desde 0.

¿Que te parece? ¿Te ha sorprendido tanto como a mi?

Adapta tus comentarios a WordPress 2.7 sin problemas

26 dic

+ 35

Bueno, me he alargado y lo he dejado mucho tiempo, pero más vale tarde que nunca. Entre turrones y garrapiñadas he pensado que sería interesante hacer digestión haciendo algo constructivo, así que vamos al lio.

Introducción

Como es dificil hacer un artículo que abarque a todos los themes disponibles vamos a usar Kubrick para ilustrar con ejemplos este tutorial. Al ser el theme por defecto de WordPress todos disponemos de él para poder hacer las pruebas mientras seguimos el tutorial.

Para los menos experimentados, el Theme Kubrick es el que nos encontraremos en la carpeta wp-content/themes/default/, concretamente vamos a editar el fichero comments.php de este directorio.

Detectar WordPress 2.7

Si estamos desarrollando un theme para WordPress 2.7, este punto puede ser interesante, pero si por el contrario estás haciendo un theme para tu blog, el que ya está en WordPress 2.7, puedes ahorrarte hacer la comprobación ya que siempre se va a cumplir.

if (function_exists('wp_list_comments')) :
// WordPress 2.7
else :
// WordPress 2.6-
endif;

Veamos como quedaría en el theme Kubrick.

<?php if ($comments) : ?>
	<h3 id="comments"><?php comments_number('No Responses', 'One Response', '% Responses' );?> to &#8220;<?php the_title(); ?>&#8221;</h3>
	<ol class="commentlist">
	<?php if (function_exists('wp_list_comments')) : ?>
	<!-- WordPress 2.7 -->
	<?php else : ?>
	<?php foreach ($comments as $comment) : ?>
		<li <?php echo $oddcomment; ?>id="comment-<?php comment_ID() ?>">
			<?php echo get_avatar( $comment, 32 ); ?>
			<cite><?php comment_author_link() ?></cite> Says:
			<?php if ($comment->comment_approved == '0') : ?>
			<em>Your comment is awaiting moderation.</em>
			<?php endif; ?>
			<br />
			<small class="commentmetadata"><a href="#comment-<?php comment_ID() ?>" title=""><?php comment_date('F jS, Y') ?> at <?php comment_time() ?></a> <?php edit_comment_link('edit','&nbsp;&nbsp;',''); ?></small>
			<?php comment_text() ?>
		</li>
	<?php
		/* Changes every other comment to a different class */
		$oddcomment = ( empty( $oddcomment ) ) ? 'class="alt" ' : '';
	?>
	<?php endforeach; /* end for each comment */ ?>
	<!-- WordPress 2.6- -->
	<?php endif;?>
	</ol>
 <?php else : // this is displayed if there are no comments so far ?>
	<?php if ('open' == $post->comment_status) : ?>
		<!-- If comments are open, but there are no comments. -->
	 <?php else : // comments are closed ?>
		<!-- If comments are closed. -->
		<p class="nocomments">Comments are closed.</p>
	<?php endif; ?>
<?php endif; ?>

Como podemos ver, ya tenemos el sistema medio montado. Ahora si el WordPress en el que está corriendo nuestro theme no tiene WordPress 2.7 nos mostrará los comentarios como los estaba haciendo hasta ahora, en caso contrario y con WordPress 2.7 disponible no mostraremos nada, por el momento.

wp_list_comments()

La clave de todo es esta función que se encarga de mostrarnos los comentarios de nuestros posts de una forma sencilla y rápida. Como la mayoría de funciones de WordPress esta tiene una serie de parámetros para personalizar su salida.

  • walker, nos activa/desactiva los comentarios anidados (Por defecto Null)
  • max_depth, máxima profundidad de estos comentarios (Por defecto ”)
  • style, estilo con el que WordPress nos permite mostrar los comentarios [ul, div] (Por defecto ul)
  • callback, función que nos permite personalizar completamente la salida de los comentarios, se lanzará en cada uno de los comentarios.
  • end-callback, función que se lanzará al terminar la iteración de los comentarios.
  • type, especifica el tipo de comentarios a mostrar [comment, pingback, all] (Por defecto all)
  • page, página en la que empezamos a mostrar los comentarios.
  • per_page, comentarios por página
  • avatar_size, tamaño del avatar de los usuarios que comentan (Por defecto 32)
  • reverse_top_level, nos muestra los comentarios en orden inverso al que se introdujeron (Por defecto Null)
  • reverse_children, orden inverso en los hijos de los comentarios anidados (Por defecto ”)

Bueno, ahora que conocemos las opciones disponibles en wp_list_comments() incorporémoslo en el código anterior.

<?php if ($comments) : ?>
	<h3 id="comments"><?php comments_number('No Responses', 'One Response', '% Responses' );?> to &#8220;<?php the_title(); ?>&#8221;</h3>
	<ol class="commentlist">
	<?php if (function_exists('wp_list_comments')) : ?>
	<!-- WordPress 2.7 -->
		<?php wp_list_comments(); ?>
	<?php else : ?>
	<?php foreach ($comments as $comment) : ?>
		<li <?php echo $oddcomment; ?>id="comment-<?php comment_ID() ?>">
			<?php echo get_avatar( $comment, 32 ); ?>
			<cite><?php comment_author_link() ?></cite> Says:
			<?php if ($comment->comment_approved == '0') : ?>
			<em>Your comment is awaiting moderation.</em>
			<?php endif; ?>
			<br />
			<small class="commentmetadata"><a href="#comment-<?php comment_ID() ?>" title=""><?php comment_date('F jS, Y') ?> at <?php comment_time() ?></a> <?php edit_comment_link('edit','&nbsp;&nbsp;',''); ?></small>
			<?php comment_text() ?>
		</li>
	<?php
		/* Changes every other comment to a different class */
		$oddcomment = ( empty( $oddcomment ) ) ? 'class="alt" ' : '';
	?>
	<?php endforeach; /* end for each comment */ ?>
	<!-- WordPress 2.6- -->
	<?php endif;?>
	</ol>
 <?php else : // this is displayed if there are no comments so far ?>
	<?php if ('open' == $post->comment_status) : ?>
		<!-- If comments are open, but there are no comments. -->
	 <?php else : // comments are closed ?>
		<!-- If comments are closed. -->
		<p class="nocomments">Comments are closed.</p>
	<?php endif; ?>
<?php endif; ?>

De esta forma estaremos obteniendo los comentario con los parámetros por defecto, pero ¿que pasa si queremos adaptar a nuestro gusto los comentarios?

Parámetro callback

El parámetro callback representa el nombre de una función que será lanzada en cada comentario y a la que se le pasará el comentario por parámetro para disponer de todas las opciones dentro de ella. De esta forma podemos personalizar nuestros comentarios.

<?php if (function_exists('wp_list_comments')) : ?>
	<?php wp_list_comments('callback=MI_TEMPLATE_DE_COMENTARIOS'); ?>
	<div class="navigation">
	<div class="alignleft"><?php previous_comments_link() ?></div>
	<div class="alignright"><?php next_comments_link() ?></div>
<?php else : ?>
	<?php foreach ($comments as $comment) : ?>
		<?php MI_TEMPLATE_DE_COMENTARIOS($comment);?>
	<?php endforeach; ?>
<?php endif; ?>

Y la función MI_TEMPLATE_DE_COMENTARIOS() tendrá un aspecto similar a este:

<?php
function MI_TEMPLATE_DE_COMENTARIOS($comment, $args, $depth) {
// Comentario actual
   $GLOBALS['comment'] = $comment; ?>
   /*
   		comment_class() --> Nos permite hacer comentarios tipo zabra.
   		comment_ID() --> ID del comentario actual
   */
   <li <?php comment_class(); ?> id="comment-<?php comment_ID() ?>">
     <div id="div-comment-<?php comment_ID(); ?>
      <div class="comment-author vcard">
/* Mostramos el avatar del usuario */
         <?php echo get_avatar(); ?>

/* Enlace a la URL del autor del comentario */
         <?php printf(__('<cite class="fn">%s</cite> <span class="says">says:</span>'), get_comment_author_link()) ?>
      </div>

/* Controlamos que el comentario esté aprovado */
      <?php if ($comment->comment_approved == '0') : ?>
         <em><?php _e('Your comment is awaiting moderation.') ?></em>
         <br />
      <?php endif; ?>
/* Datos extra de los comentarios */
      <div class="comment-meta commentmetadata"><a href="<?php echo htmlspecialchars( get_comment_link( $comment->comment_ID ) ) ?>"><?php printf(__('%1$s at %2$s'), get_comment_date(),  get_comment_time()) ?></a><?php edit_comment_link(__('(Edit)'),'  ','') ?></div>
/* Texto del comentario */
      <?php comment_text() ?>
/*Botón de reply, con él podremos responder a un comentario.*/
      <div class="reply">
         <?php comment_reply_link(array_merge( $args, array('add_below' => 'div-comment', 'depth' => $depth, 'max_depth' => $args['max_depth']))) ?>
      </div>
     </div>
   </li>
<?php } ?>

Exactamente lo que hará WordPress, será hacer pasar la variable $comment por esta función en cada comentario, haciendo que esta sea la encargada de pintar la salida por pantalla.

Responder comentarios

La posibilidad de responder a comentarios sin tener que montarlo tu mismo, es un aliciente más que WordPress 2.7 nos ofrece, pero para entender como funciona debemos conocer comment_reply_link().

comment_reply_link();

Se trata de generar el enlace necesario para poder responder a un comentario, en el código anterior, vemos como lo insertamos despues de comment_text(). Por defecto esta función recibe 3 parámetros:

  • $args, argumentos que condicionarán la salida
  • $comment, comentario que vamos a responder
  • $post, post en el que se encuentra en comentario que hemos de responder.

Los argumentos disponibles que condicionarán la salida nos darán una cierta flexibilidad a la hora de generar el enlace:

  • add_below, patrón al que se le añadirá el ID del comentario que indicará a que comentario hará referencia la respuesta (Por defecto comment-XXX)
  • respond_id, lugar en el que se insertará el comentario recien comentado (Por defecto respond)
  • reply_text, etiqueta que informará al usuario de la acción del enlace (Por defecto “Reply”)
  • login_text, etiqueta que mostrará en caso de que el usuario no esté logueado y sea necesario (Por defecto “Log in to Reply”)
  • depth, profundida del comentario, para comentarios anidados (Por defecto 0)
  • before, HTML que se insertará delante del enlace
  • after, HTML que se inseratá despues del enlace.

Esto nos generará el enlace necesario para responder a comentarios, pero aún nos queda adaptar el theme para poder recibir la respuesta.

La magia del javascript

La respuesta de comentarios necesitará de unas funciones de Javascript para hacer más dinámica la tarea de responder a los comentarios, para ello tendremos que añadir en el <head></head> de nuestro theme la siguiente línea:

if ( is_singular() ) wp_enqueue_script( 'comment-reply' );

Se encargará de cargar los Javascript necesarios para disfrutar de esta funcionalidad.

Modificando el formulario

WordPress por si solo no puede detectar los nombres de los elementos de nuestros formularios y como necesitan ciertos campos que hasta ahora no existían nos obliga a añadir esta línea en nuestro formulario para generar los campos necesarios para la respuesta.

<?php comment_id_fields(); ?>

Si nuestro theme tiene un elemento <input /> llamado comment_post_ID, podemos borrarlo ya que esta función se encargará de generarlo automáticamente.

Para indicarle el lugar en el que se encuentran los elementos necesarios para responder, debemos insertar un enlace en forma de ancla en el formulario, simplemente nos servirá para llevar el foco al formulario de envio:

<a id="respond"></a>

Para terminar, tenemos la función comment_form_title(), que se encargará de cambiar el famoso texto de “Leave a comment” por un “Leave a reply for XXX” en caso de estar respondiendo un comentario, para ello deberemos reemplazar el texto:

<h3 id="respond">Leave a Reply</h3>

por este otro:

<h3><?php comment_form_title( 'Leave a Reply', 'Leave a Reply to %s' ); ?></h3>

Si el usuario decide cancelar la acción y desechar la respuesta al comentario debe tener un enlace que le permita hacer esto, por eso tendremos que añadirlo en nuestro formulario de comentarios con la siguiente función:

<div id="cancel-comment-reply">
   <small><?php cancel_comment_reply_link() ?></small>
</div>

¿Y la paginación?

Otra de las mejoras que los comentarios nos traen en esta nueva versión, es la paginación de los mismos, haciendo que los posts con centenares de comentarios queden un poco más legibles. Para ello tenemos un serie de funciones que nos permiten dotar nuestros themes de esta funcionalidad. Evidentemente estas funciones será usadas únicamente en el apartado que destinamos a WordPress 2.7 ya que estas funciones no están disponibles para versiones previas.

next_comments_link();

Nos enlaza con la siguiente página de comentarios dentro de nuestro post. Esta función recibe 2 parámetros:

  • label, etiqueta que deseamos mostrar para informar al usuario del uso del enlace. (Por defecto “Newer Comments »”)
  • max_pages, máximo de páginas mostradas para enlazar. (Por defecto 0)

previous_comments_link();

Nos enlaza con los comentarios anteriores, si los hubiera. Por defecto dispone de un único parámetro:

  • label, etiqueta que deseamos mostrar (Por defecto “« Older Comments”)