Jeff Chandler escribió una reseña en WPCandy de nuestro tema Nature Blog hace unos días. Una de las cosas que dijo en esta reseña fue lo siguiente:
No veo inmediatamente soporte para etiquetas, pero eso es algo que no sería muy difícil de agregar. Sin embargo, creo que las etiquetas deberían ser una cualidad predeterminada en los temas hoy en día, considerando que es tan simple como agregar esa función al tema.
No podría estar más de acuerdo, y desde esa reseña he intentado asegurarme de que todos los futuros lanzamientos de Theme Lab tengan soporte para etiquetas, además de trabajar en el soporte para etiquetas en lanzamientos de temas anteriores. En esta guía te enseñaré cómo agregar soporte para etiquetas a tus propios temas que quizás no lo tengan. Como dijo Jeff, es realmente "tan simple como agregar esa función al tema".
¿Qué es una etiqueta?
De acuerdo, si no sabes qué es una etiqueta y cuál es la diferencia entre una categoría y una etiqueta, lee el artículo Categorías versus Etiquetas en Lorelle on WordPress. No puedo explicarlas mejor que eso, así que dirígete allí si no estás seguro.
Listar etiquetas en el Loop
La función the_tags() es la función que se utiliza para mostrar las etiquetas dentro de el Loop, similar a las categorías. "Tomemos prestado" algo de código de mi tema favorito de WordPress de todos los tiempos, Kubrick (el predeterminado).
<?php the_tags('Etiquetas: ', ', ', '<br />'); ?>
Es un poco difícil leer los argumentos, pero el primer argumento es lo que se muestra antes (actualmente Etiquetas:, luego el separador de comas (entre cada etiqueta) y luego lo que viene después: el salto de línea. Debido a que el código de antes y después está incluido dentro de la función, no hay necesidad de formato HTML externo, por lo que no se mostrará nada si no tienes etiquetas en una publicación específica. Para rodear tus etiquetas con una etiqueta de párrafo en su lugar, harías esto:
<?php the_tags('<p>Etiquetas: ', ', ', '</p>'); ?>
Puedes colocar este código donde sea que haya un Loop, ya sea en tu Plantilla de Índice Principal (index.php) o en tu Plantilla de Publicación Única (single.php).
Agregar una nube de etiquetas en tu barra lateral
La función wp_tag_cloud es la que muestra la nube de etiquetas. Aquí tienes un ejemplo básico de una nube de etiquetas mostrada en una barra lateral.
<?php wp_tag_cloud('smallest=8&largest=22'); ?>
smallest y largest son tamaños de fuente. Colocar el siguiente código en tu barra lateral producirá algo como esto.
Por supuesto, puedes disminuir el tamaño de la fuente en el parámetro largest si crees que es demasiado grande. Una lista completa de parámetros se puede encontrar en la página wp_tag_cloud en el Codex.
Mostrar etiquetas como categorías en la barra lateral
Sé que hay algunos detractores de las nubes de etiquetas, así que si quieres mostrar las etiquetas en formato de lista, puedes agregar algunos parámetros a la función wp_tag_cloud para hacerlo.
<?php wp_tag_cloud('smallest=10&largest=10&format=list&unit=px'); ?>
Esto hará que las fuentes tengan el mismo tamaño (10px) y se formateen en una lista.
Conclusión
Si prefieres etiquetas a categorías, o junto con categorías y tu tema no lo soporta, espero que esto te haya resultado fácil de seguir. Hazme saber en los comentarios qué te pareció. Gracias de nuevo a Jeff por la inspiración para este tutorial.
¡Qué buena guía!
tienes alguna idea de cómo puedo agregar una coma en “wp_tag_cloud”
entre las etiquetas.. ??
Gran publicación – muchas gracias. Voy a ajustar el sitio ahora para incluirlo – ¡saludos!
Oye – me funciona de maravilla. (El sitio aún no se ha lanzado.)
Estuve dando vueltas hasta que encontré esto.
Gracias
¡Lo acabo de hacer y funcionó, muchas gracias!
Olvida el último comentario. Descubrí que debería mover el encabezado y "wp_tag_cloud" después del "endif" al final de la página, y desactivar el widget de Etiquetas.
¡Gracias por los excelentes consejos!
Tengo dificultades para que esto funcione en mi plantilla. Solo quiero que la barra lateral muestre las etiquetas como una lista, con el título "Lista de clientes". No importa de qué manera agregue el código, todavía sale como una nube con diferentes tamaños. Aquí está mi código en "Sidebar.php":
Lista de clientes
¿Lo he puesto en el archivo equivocado? Cuando tengo el widget de etiquetas activo, es una nube. Cuando está inactivo, desaparece todo. Sé que es algo simple que me estoy perdiendo… ¡Ayuda!