Taxonomía en WordPress: cómo crear taxonomías perfectas

taxonomias en wordpress

La taxonomía en WordPress se describe en el Codex de WordPress como un mecanismo de agrupación para todo el contenido. En términos simples, permite que las entradas se clasifiquen según sus características compartidas.

Si tienes un sitio web sobre películas, por ejemplo, probablemente querrás clasificar las películas por su género. Las clasificaciones permiten hacer precisamente eso, lo que ayuda a los usuarios a navegar por tu sitio.

A pesar de que el término «taxonomía» se origina en la biología, en este artículo explicaremos lo que es la taxonomía (o clasificación) en WordPress, las taxonomías personalizadas y cómo crearlas.

¿Que son las taxonomías en WordPress?

En WordPress, las taxonomías son un método empleado para reunir contenidos. Las dos variedades de clasificaciones más empleadas en WordPress son las categorías y las etiquetas, que posibilitan simplificar el desplazamiento y navegación de los visitantes por el sitio web.

¿Cuáles son los tipos de taxonomías en WordPress?

En el universo WordPress, existen cuatro tipos de taxonomías que vienen de forma predeterminada con cada instalación para que puedan ser utilizadas en la agrupación de tus entradas o artículos. Veamos cada una de ellas.

1. Categoría

La taxonomía de categorías en WordPress te brinda la posibilidad de agrupar tus publicaciones en categorías jerárquicas. Hay dos formas de realizar esta agrupación mediante Categorías.

La primera opción es acceder al panel de control y seleccionar Entradas -> Categorías. Allí, tendrás la capacidad de establecer tus categorías, agregar la identificación de WordPress (o slug) y establecer subcategorías.

taxonomia en wordpress - categorias

La segunda alternativa sería dirigirte a la sección de Entradas y seleccionar la opción de Crear Nueva. Desde allí, podrás incluir diversas categorías de manera sencilla mediante el panel ubicado al lado de tu editor gráfico. Si bien es la alternativa más sencilla, no te permitirá establecer el slug ni la descripción.

taxonomias - agregar categoría

2. Etiquetas

Las etiquetas son parecidas a las categorías, ya que ambas agrupan tus entradas. No obstante, las etiquetas se enfocan en detalles más específicos de tu contenido, en vez de temas generales, y son únicas.

Por ejemplo, si seguimos con el ejemplo de una página de películas en WordPress y quieres categorizar por géneros y subgéneros, puedes usar una categoría como taxonomía, ya que tiene una estructura jerárquica. Pero si quieres agrupar todas las películas con Will Smith como protagonista principal, puedes añadir etiquetas.

Crear etiquetas en WordPress es similar a crear categorías. Puedes hacerlo desde Entradas -> Etiquetas o desde el panel junto al editor visual. También puedes definir el slug y la descripción.

taxonomias - etiquetas

Las restantes 2 taxonomías predeterminadas de WordPress no se encuentran visibles para los usuarios. A pesar de su poco uso, es relevante destacarlas.

3. Link_category

Esta taxonomía te posibilita ordenar y clasificar tus vínculos. Si conectas numerosas fuentes en tus publicaciones o entradas, esta característica te será particularmente beneficiosa.

4. Post_format

La taxonomía de post_format te ofrece la opción de categorizar tus publicaciones en función de diferentes tipos, como lo pueden ser videos, imágenes, links, audios, etc. Estas opciones se encuentran en el panel de tu editor visual.

¿Cómo crear taxonomías personalizadas en WordPress?

En el sector derecho de tu editor gráfico, puedes encontrar la pestaña «Categorías» y «Etiquetas». Sin embargo, ¿qué sucede si deseas tener tu propia clasificación que se llame «Actores»? En este caso, las clasificaciones personalizadas son la respuesta. Puedes personalizar tus clasificaciones para que se ajusten perfectamente a tus requerimientos.

anadir nuevo actor

Siguiendo con el mismo ejemplo, considera el mismo sitio de WordPress sobre películas. En vez de utilizar una taxonomía genérica denominada «categorías», sería más apropiado utilizar taxonomías personalizadas como «Géneros». Cada taxonomía puede ser refinada aún más mediante subcategorías como «Acción», «Románticas» y «Comedias». Lo mismo sucede con las etiquetas, donde podrías emplear la etiqueta «Actores» en lugar de los términos por defecto.

Existen dos formas diferentes de crear taxonomías en WordPress. Puedes hacerlo con plugins, o puedes hacerlo con código.

Crear taxonomías en WordPress con plugins

Los plugins simplifican todo y crear clasificaciones personalizadas no es una excepción. No se requiere experiencia técnica para lograrlo. Los plugins recomendados para crear clasificaciones personalizadas son Custom Post Type UI y Pods. Veamos un ejemplo de cómo usar el primero:

  1. Instala y activa Custom Post Type UI
  2. Ve a CPT UI -> Añadir/Editar Clasificaciones
  3. Llena el campo con el nombre de tu clasificación. Por ejemplo, usaremos «Ejercicio de suelo». También elige los tipos de contenido personalizados en los que deseas aplicar la nueva clasificación.
  4. Pulsa el botón Añadir taxonomía en la parte inferior.
taxonomia personalizada con CPT UI

Es posible que hayas observado que la reciente taxonomía creada es una etiqueta llamada «Actores». ¿Qué ocurre si prefieres establecer una categoría en lugar de una etiqueta? Es sencillo. Desciende un poco y altera el parámetro Jerárquico (Hierarchical) a Verdadero (True).

categoria personalizada con CPT UI

Crear taxonomías en WordPress utilizando código .php

Solo deberías optar por esta técnica si te sientes seguro programando. Si no es así, omite este manual y utiliza únicamente complementos.

Para usuarios experimentados, únicamente es necesario agregar unas pocas líneas en el archivo functions.php de la carpeta de tu plantilla. Es importante destacar que los códigos para las categorías jerárquicas son distintos a los de las no jerárquicas.

Observa el siguiente caso de muestra:

Taxonomía tipo categoría (jerárquica)

// conectar con la acción init y llamar a create_book_taxonomies cuando se ejecute
add_action( 'init', 'create_topics_hierarchical_taxonomy', 0 );
// crear una taxonomía personalizada llamada "géneros" para tus entradas
function create_topics_hierarchical_taxonomy() {
// Añadir nueva taxonomía, hacerla jerárquica como las categorías
// primero hacer la parte de traducciones para GUI
$labels = array(
  'name' =_x( 'Géneros', 'nombre general de la taxonomía' ),
  'singular_name' =_x( 'Genero', 'nombre singular de la taxonomía' ),
  'search_items' =__( 'Buscar géneros' ),
  'all_items' =__( 'Todos los géneros' ),
  'parent_item' =__( 'Género principal' ),
  'parent_item_colon' =__( 'Género principal:' ),
  'edit_item' =__( 'Editar género' ),
  'update_item' =__( 'Actualizar género' ),
  'add_new_item' =__( 'Añadir nuevo género' ),
  'new_item_name' =__( ' Nombre del nuevo género' ),
  'menu_name' =__( 'Géneros' ),
);
// Registrar la taxonomía
register_taxonomy('topics',array('post'), array(
  'hierarchical' =true,
  'labels' =$labels,
  'show_ui' =true,
  'show_admin_column' =true,
  'query_var' =true,
  'rewrite' =array( 'slug' = 'genero' ),
));
}

Taxonomía tipo etiqueta (no jerárquica)

// conectar con la acción init y llamar a create_book_taxonomies cuando se ejecute
add_action( 'init', 'create_topics_hierarchical_taxonomy', 0 );
// crear una taxonomía personalizada llamada actores para tus entradas
function create_topics_hierarchical_taxonomy() {
// Añadir nueva taxonomía, hacerla jerárquica como las categorías
// primero hacer la parte de traducciones para GUI
$labels = array(
  'name' =_x( 'Actores', 'nombre general de la taxonomía' ),
  'singular_name' =_x( 'Actor', 'nombre singular de la taxonomía' ),
  'search_items' =__( 'Buscar actores' ),
  'all_items' =__( 'Todos los actores' ),
  'parent_item' =__( 'Actor principal' ),
  'parent_item_colon' =__( 'Actor principal:' ),
  'edit_item' =__( 'Editar actor' ),
  'update_item' =__( 'Actualizar actor' ),
  'add_new_item' =__( 'Añadir nuevo actor' ),
  'new_item_name' =__( 'Nombre del nuevo actor' ),
  'menu_name' =__( 'Actores' ),
);
// Registrar la taxonomía
register_taxonomy('topics',array('post'), array(
  'hierarchical' =true,
  'labels' =$labels,
  'show_ui' =true,
  'show_admin_column' =true,
  'query_var' =true,
  'rewrite' =array( 'slug' = 'tema' ),
));
}

Para mostrar las nuevas taxonomías en tu editor visual, abre single.php desde el Editor y copia este código:

the_terms( $post-ID, 'actores', 'Actores: ', ', ', ' ' );

Listo. Si el proceso se completa con éxito, una nueva taxonomía llamada «Actores» aparecerá en tu editor visual.

Conclusión

Las taxonomías en WordPress tienen como finalidad la organización del contenido. Es posible emplear las categorías para asuntos generales y las etiquetas para especificidades del texto. Además, es factible generar clasificaciones personalizadas a través de complementos (plugins) o modificando el archivo functions.php.

La correcta utilización de las taxonomías en WordPress contribuirá a optimizar la experiencia del usuario en tu sitio web.

Franco Silvetti
Franco Silvetti

Freelancer especializado en WordPress, con más de 4 años de experiencia.