Tipos de publicaciones personalizadas de WordPress: guía para principiantes

Publicado: 2017-01-04

WordPress ya no es solo una herramienta para escribir y publicar publicaciones de blog. A lo largo de los años, se ha convertido en un sistema de gestión de contenido extensible, flexible y robusto. WordPress se está convirtiendo de forma lenta pero segura en un marco completo para crear aplicaciones web. Una de las cosas que hace que este CMS sea tan ajustable son los tipos de publicaciones personalizadas.

De forma predeterminada, WordPress viene con 5 tipos de publicaciones de contenido, de las cuales 2 le resultarán muy familiares: publicación y página. Pero los usuarios pueden crear tantos tipos de publicaciones personalizadas como necesiten y usarlos para ajustar WordPress para satisfacer sus necesidades. En este artículo, nos familiarizaremos con los tipos de publicaciones personalizadas de WordPress y cómo pueden ayudarlo a crear sitios web increíbles. Cubriremos dos formas de crear tipos de publicaciones personalizadas: manualmente y mediante el uso de un complemento.

Tipos de publicaciones personalizadas de WordPress

Fuera de la caja, WordPress viene con los siguientes tipos de publicaciones:

  • Correo
  • Página
  • Revisión
  • Archivo adjunto
  • Menú de Navegación

WordPress trata cada uno de sus tipos de publicaciones de manera diferente, al permitir opciones y características únicas. Un ejemplo simple serían las categorías y las etiquetas, que son exclusivas del tipo de publicación "publicación". Puede configurar su publicación de blog en una categoría específica, pero no puede hacer lo mismo para una página estática. Las páginas, por otro lado, pueden tener padres y plantillas.

Los tipos de publicaciones mencionados hasta ahora están reservados por WordPress. Los usuarios pueden crear sus propios tipos de publicaciones personalizadas para ampliar la funcionalidad del sitio web y organizar mejor su contenido. Por lo general, la creación de tipos de publicaciones personalizadas va de la mano con la creación de campos personalizados y taxonomías personalizadas, que le permiten insertar contenido y opciones únicos, específicos para un tipo de publicación determinado. Pero dejemos esto para otro momento y concentrémonos en configurar un tipo de publicación único para nuestro sitio web.

Ejemplos de tipos de publicaciones personalizadas

Un tipo de publicación puede ser cualquier tipo de contenido que necesite para su sitio web. Digamos que tenemos un sitio web de podcasts que necesita mostrar episodios de podcasts y necesita publicar publicaciones de blog ocasionales pero separadas. Ahora, si mezclamos todo nuestro contenido (podcasts y publicaciones de blog) en un solo lugar, nuestra sección de contenido se volverá realmente desordenada muy rápido. Es por eso que para nuestras publicaciones de blog ocasionales, usaremos el tipo de publicación predeterminada "publicación" en WordPress, que nos permite usar las taxonomías predeterminadas: categorías y etiquetas.

En cuanto a nuestra sección de Podcast , crearemos un tipo de publicación personalizada llamada Podcast . De esta manera, podemos separar los dos tipos de contenido diferentes en el sitio web y organizarlos de manera ordenada. Más tarde, podemos crear campos personalizados para nuestra sección de podcasts, como la duración del episodio, los anfitriones del programa, los enlaces, etc. Además, podemos configurar taxonomías personalizadas específicas para este tipo de contenido, como categorías de podcast, programas de podcast y más. Verá adónde va esto y cuánta flexibilidad ofrece WordPress en términos de manipulación y estructura del contenido.

Crear un tipo de publicación personalizada en WordPress

Hay 2 formas de crear un tipo de publicación personalizada en WordPress: manualmente (bastante fácil, pero requiere cierta familiaridad con la codificación) y usando un complemento (método mucho más fácil, pero requiere que mantengas el complemento instalado). ¿Cuál deberías elegir? Tener muchos complementos puede causarle dolores de cabeza debido a la incompatibilidad, los problemas de rendimiento y el código incorrecto. Si ya tiene toneladas de complementos instalados, es posible que desee ensuciarse las manos esta vez. Cubriremos ambos métodos, y usted decide cuál funciona mejor para usted.

Usar un complemento

Hay un puñado de complementos para crear tipos de publicaciones personalizadas. Uno de los más populares es la interfaz de usuario de tipo de publicación personalizada, que también le permite crear taxonomías personalizadas para su tipo de publicación.

Nota importante: los tipos de publicaciones que se crean con un complemento desaparecerán si elimina el complemento en cuestión. Los datos estarán en la base de datos, pero su tipo de publicación personalizada dejará de estar registrada y no se podrá acceder a ella desde el área de administración.

La interfaz de este complemento es bastante intuitiva y simple. Hace clic en Agregar nuevo y luego proporciona un nombre de tipo de publicación, una etiqueta, una etiqueta única y una descripción para el tipo de publicación personalizada. No es que los 5 tipos de publicaciones de WordPress estén reservados, y no puede usar esos nombres. Aquí hay un ejemplo de lo que debe ingresar:

Nombre del tipo de publicación: Podcasts
Etiqueta: Podcasts
Nombre singular: Podcast
Descripción: Tipo de publicación para podcasting

WordPress utiliza el campo de nombre singular para mostrar algunos elementos de la interfaz de usuario y acciones como Agregar nuevo podcast.

A mano

Para crear un tipo de publicación personalizada manualmente, debe modificar las funciones de su tema.php. Utilice su cliente FTP favorito e inicie sesión en el servidor en el que está alojado su sitio web. Una vez conectado, debe:
1. Navegue a wp-content -> temas -> su tema
2. Abra funciones.php
3. Si está utilizando un tema secundario y no existe tal archivo, créelo.
4. Inserte el código a continuación.

Según nuestro ejemplo, necesitamos crear un tipo de publicación personalizada de podcast. Aquí está el código para eso (del paso 4: el siguiente código entra en su archivo functions.php):

 // Registering CPT function podcast_post_type() { //Setting up the user interface labels for podcasting CPT $labels = array( 'name' => _x( 'Podcasts', 'Post Type General Name' ), 'singular_name' => _x( 'Podcast', 'Post Type Singular Name' ), 'menu_name' => __( 'Podcasts' ), 'name_admin_bar' => __( 'Podcast' ), 'parent_item_colon' => __( 'Parent Podcast' ), 'all_items' => __( 'All Podcasts' ), 'add_new_item' => __( 'Post New Podcast' ), 'add_new' => __( 'New Podcast' ), 'new_item' => __( 'New Podcast' ), 'edit_item' => __( 'Edit Podcast' ), 'update_item' => __( 'Update Podcast' ), 'view_item' => __( 'View Podcast' ), 'search_items' => __( 'Search Podcasts' ), 'not_found' => __( 'No Podcasts found' ), 'not_found_in_trash' => __( 'No Podcasts found in trash' ) ); //Setting up other options for Podcasts CPT $args = array( 'label' => __( 'Podcasts' ), 'labels' => $labels, 'description' => __( 'Creating and managing podcasts' ), 'supports' => array( 'title', 'editor', 'excerpt', 'thumbnail', 'comments', 'revisions', 'custom-fields' ), //Initially supported features 'taxonomies' => array( 'podcast-category'), //If custom taxonomies exist, insert their names in the array 'hierarchical' => false, 'public' => true, 'show_ui' => true, 'show_in_menu' => true, 'menu_position' => 5, 'show_in_admin_bar' => true, 'show_in_nav_menus' => true, 'can_export' => true, 'has_archive' => true, 'exclude_from_search' => false, 'publicly_queryable' => true, ); //Registering custom post type register_post_type( 'podcasts', $args ); } // Hook into init action add_action( 'init', 'podcasts_post_type', 0 );

Esta parte del código puede parecer complicada, pero en realidad no lo es. Solo está insertando un montón de opciones para el tipo de publicación personalizada y especificando lo que admitirá. Tenga en cuenta que:

  • La matriz $labels le dice a WordPress cómo mostrar el tipo de publicación en el panel de administración.
  • La matriz $args carga toda la configuración de la matriz $labels y especifica las opciones para el tipo de publicación personalizada.
  • La magia ocurre cuando se llama a la función register_post_type( 'podcasts', $args) dentro de la función principal podcasts_post_type() con 2 argumentos: el nombre del tipo de publicación personalizada y las opciones almacenadas en $args (que es una matriz asociativa). Luego, simplemente conectamos la función podcasts_post_type() a init y dejamos que WordPress la cargue.

Cuando haces clic en Guardar y subes el archivo functions.php modificado a la carpeta de tu tema, deberías ver Podcasts (justo debajo de las publicaciones, porque configuramos la posición del menú en $args a 5) en tu panel de administración de WordPress. Si pasa el cursor sobre él, debería ver acciones como "Todos los podcasts" y "Agregar nuevo podcast", tal como especificamos en la matriz $labels. Dado que no insertamos ningún campo personalizado, cuando intente agregar un nuevo podcast, todo será igual que si estuviera agregando una publicación normal.

Si se dio cuenta, en la matriz $args, agregamos 'podcasts' como taxonomía. Todavía no hemos creado esta taxonomía, pero finalmente mantendrá nuestras categorías personalizadas, como categorías de podcasts, programas de podcasts, etc.

Cuando se trata de tipos de publicaciones personalizadas de WordPress, esto es realmente todo lo que necesita ahora. Ahora la pregunta es, ¿cómo mostrar contenido de su CPT, cómo crear taxonomías (en nuestro caso, la taxonomía de podcast) y cómo crear campos personalizados? ¡No se preocupe, vamos a cubrir todo esto, paso a paso!