Descuento 20% Diciembre
Plugin Optimización de Imágenes Gratuito para WordPress
Martes, 07 Julio 2015 19:13

Taxonomías en WordPress ¡a recoger, a ordenar, cada cosita en su lugar!

Escrito por 
CMS:  WordPress |  Versión:  4.2.x |  Nivel de dificultad:  Medio |  Tiempo estimado de lectura:  10 minutos


Taxonomías en WordPress ¡a recoger, a ordenar, cada cosita en su lugar!Recuerdo la letra de esta canción como si la tuviese grabada a fuego en mi mente. Se la cantaba a mi hijo de pequeño cuando estaba en la fase de aprender a ordenar las cosas en el lugar correcto y organizar los juguetes en base a tamaños y tipos, ahora se la enseño a mi hija Luah que aprende con esta sencilla cantinela que ordenar ayuda a encontrar mejor las cosas, ¡y que otros las encuentren! :P

Aplicado esto a WordPress ¿cual es la analogía?. Se llama Taxonomía, y básicamente permite clasificar información más allá de las categorías a las que podemos asociarla, sin perdernos en un mar de categorías y más categorías (nada bueno para SEO), optimizando mejor la forma en que agrupamos los contenidos.

El invento de las taxonomías en WordPress vino a partir de la versión 2.8 para auxiliar a las Categorías y posteriormente a las Etiquetas, para complementarlas y permitir una jerarquización de contenidos que no estuviese solo basada en "categorías", algo de lo que se ha abusado mucho en otros CMS. ¡Vamos a dar una vuelta por el fascinante mundo de las Taxonomías!

Una cita rápida:

La taxonomía es, en su sentido más general, la ciencia de la clasificación.Wikipedia

¿Cuales son las Taxonomías en WordPress?

WordPress ofrece cuatro taxonomías incorporadas fuera de la caja:

  • Categorías (jerárquicas)
  • Etiquetas (multifacéticas)
  • Enlaces (multifacéticas)
  • Menú de navegación (jerárquicas)

La taxonomía Categoría category permite agrupar entradas ordenándolas en varias categorías. Estas categorías pueden visualizarse utilizando enlaces del tipo /category/nombre. Son de carácter jerárquico, pudiendo anidar unas sobre otras.

La taxonomía Etiqueta post_tag es parecida a la de 'Categorías' pero más abierta. Las etiquetas pueden crearse en el momento de la escritura de un post (por ejemplo). Pueden visualizarse en el sitio con enlaces tipo /tag/nombre. Los post o entradas suelen tener muchas etiquetas, y generalmente se muestran con los post o en un widget de nube de etiquetas. No son jerárquicas, mantienen su independencia.

La taxonomía Categorías de links link_category permite categorizar los enlaces. Se usan internamente, razones organizacionales, y no son usualmente expuestos en el sitio. Son interesantes para definir grupos de enlaces a mostrar en las barras laterales o el pié del sitio web.


Crear Taxonomías

WordPress ofrece un método de agrupación de los contenidos que te permite crear tus propias taxonomías personalizadas. Los desarrolladores del 'core' han creado la función register_taxonomy() para gestionar el trabajo pesado con las taxonomías.

Para usuarios no muy metidos en las finezas de WordPress, pienso que la opción más viable para crear taxonomías es utilizando el plugin Custom Post Type UI para crear entradas y taxonomías personalizadas.

WordPress

Custom Post Type UI

IU de administración para la creación de tipos de post personalizados y taxonomías personalizadas en WordPress

Tiempo atrás se solía recomendar Simple Taxonomy, un plugin orientado ala creación de taxonomías que tiene un desempeño muy bueno, pero yo no te lo recomiendo en la actualidad ya que lleva 2 años sin actualizarse y es mejor no tentar a las vulnerabilidades y a la suerte.

Existen generadores online para Taxonomías que puedes echar una ojeada, principalmente si no tienes muy claro como se construye el código.


Un caso práctico:

Un periódico o sitio de noticias de cobertura nacional podría organizar sus contenidos por regiones del país o por países, (África, Asia, Europa, América Latina, Oriente Medio, Estados Unidos, Canadá, etc.) y agruparlos dentro de la categoría "Mundo".

Un ejemplo de código de taxonomía para este caso seria:

/**
 * Add custom taxonomies
 *
 * Aquí se pueden definir taxonomías adicionales personalizadas
 * http://codex.wordpress.org/Function_Reference/register_taxonomy
 */
function add_custom_taxonomies() {
  // Añade nuevas "Localizaciones" en la taxonomía Posts
  register_taxonomy('location', 'post', array(
    // Hierarchical taxonomy (like categories)
    'hierarchical' => true,
    // This array of options controls the labels displayed in the WordPress Admin UI
    'labels' => array(
      'name' => _x( 'Localizaciones', 'taxonomy general name' ),
      'singular_name' => _x( 'Localización', 'taxonomy singular name' ),
      'search_items' =>  __( 'Buscra Localizaciones' ),
      'all_items' => __( 'Todas las Localizaciones' ),
      'parent_item' => __( 'Localización superior' ),
      'parent_item_colon' => __( 'Localización superior:' ),
      'edit_item' => __( 'Editar Localización' ),
      'update_item' => __( 'Actualizar Localización' ),
      'add_new_item' => __( 'Añadir nueva Localización' ),
      'new_item_name' => __( 'Nombre nueva Localización' ),
      'menu_name' => __( 'Localizaciones' ),
    ),
    // Control de slugs usados en esta taxonomía
    'rewrite' => array(
      'slug' => 'Localizaciones', // Esto controla el slug de base que se mostrará antes de cada término
      'with_front' => false, // No mostrar la categoría base antes de "/locations/"
      'hierarchical' => true 
    ),
  ));
}
add_action( 'init', 'add_custom_taxonomies', 0 );

Después de añadir este código en el archivo functions.php de tu tema, ¡mejor en un tema hijo! ;), deberías ver una nueva taxonomía en el menú "Post" en la barra lateral del dashboard. Funciona igual que las categorías, pero es independiente.



Ahora puedes añadir nuevos términos a la taxonomía creada y así comenzar a organizar el contenido de tus post según la localización.

Un nuevo cuadro de "Localizaciones" aparecerá a la derecha de tus post. Utilizalo tal como lo harías si fuesen categorías.


Una forma inteligente de construir un sitio con WordPress es invertir tiempo en la estructuración de las Categorías, Etiquetas y Taxonomías, que ayudarán posteriormente a mantener los contenidos mejor organizados y tu SEO se verá más beneficiado.



¿Te ha resultado interesante este artículo?

Suscríbete para recibir consejos exclusivos para WordPress, Joomla y PrestaShop



Luis Méndez Alejo

Miembro del equipo técnico de Webempresa.
Coordinador de contenidos en el Blog y en Youtube.
Google+


Plugin Optimización de Imágenes Gratuito para WordPress