Una de las funciones que ha permitido a WordPress posicionarse como el «CMS» (Sistema de Gestión de Contenido) más exitoso al día de hoy, ha sido la integración de «Custom Post Types» (Tipos de Entradas Personalizadas). Esta poderosa función permite a los usuarios de WordPress crear una gran variedad de contenido. En la primera parte de esta entrega, descubre cómo potencializar tu sitio web comprendiendo los custom post types:
Acerca de los Custom Post Types
Un «Custom Post Type» (Tipo de Entrada Personalizada) no es más que una entrada/post que tiene un valor «post_type» diferente en la base de datos. El valor que tiene una «entrada» normal en la base de datos de WordPress es «post«, las «páginas» utilizan «page«, y en el caso de los «archivos adjuntos» es «attachment» y así sucesivamente. Los custom post types te permiten crear tus propios valores para indicar el tipo de contenido creado. Puedes crear custom post types para productos, libros, revistas, etc.
Los Custom Post Types permiten:
- Un acceso fácil, ya que se agregan como un elemento adicional al «Menú lateral» del panel de control. Cada custom post type tendrá su propia lista de entradas y una página única de creación: «Añadir nueva«
- Acceso al archivo de los custom post types al visitar una URL similar a: «http://midominio.com/customposttype/«
- Disponer de categorías y etiquetas, o crear taxonomías personalizadas
Además, puedes modificar un gran número de opciones, por ejemplo: decidir en qué parte del menú se debe colocar el enlace del custom post type, qué tipos de usuarios pueden acceder a ellos, definir reglas de reescritura personalizadas, etc.
En WordPress, cada tipo de contenido tiene diferentes requisitos de datos. Para las entradas normales, generalmente defines su autor, categoría, fecha, etc. Para un custom post type, como por ejemplo «libro«, tal vez quieras definir el autor de la obra, el número de páginas, su género, la editorial, etc.
Esta información la puedes añadir fácilmente a través de los «cuadros meta personalizados«. Los cuadros meta personalizados te permiten agregar campos adicionales a la pantalla de edición de una entrada. -Explicaremos su creación en la próxima entrega: Comprendiendo los Custom Post Types (2da Parte)
Trabajar con Custom Post Types
Para crear y utilizar eficientemente los custom post types es necesario que estés familiarizado con lo siguiente:
- Creación de custom post types
- Creación de taxonomías personalizadas
- Creación de cuadros meta personalizados
» Creación de Custom Post Types
El primer paso es iniciar la creación de custom post types, para hacer esto debes utilizar el archivo «functions.php» de tu plantilla o tema.
En su forma más simple, el código de arriba crea un custom post type que carece de personalización. Este custom post type no va a ser público, ni tampoco se mostrará en la administración, los mensajes de interacción serán los mismos que utilizan las entradas normales («entrada guardada», «entrada actualizada», etc).
Para personalizar el custom post type a nuestras necesidades, te explicamos algunas de las opciones que puedes utilizar con «$args«:
labels
La opción «labels» (etiquetas) debe ser una matriz que defina las diferentes etiquetas que un custom post type puede tener.
description
Ofrece una breve descripción del custom post type: qué hace y por qué lo estamos utilizando.
public
Esta opción controla muchas cosas a la vez. Definir su valor en «true» (verdadero) creará opciones que tienen que ver con la visibilidad. Por ejemplo, es posible tener un custom post type visible pero que no sea consultable.
menu_position
Define la posición del enlace del custom post type en el menú lateral. En nuestro sitio de pruebas si lo establecemos en «4» se sitúa después de las «Entradas«.
supports
Esta opción configura los controles que por defecto estarán disponibles en la pantalla de edición para el custom post type. De forma predeterminada, sólo el campo «título» y «autor» serán mostrados. Si deseas añadir soporte para comentarios, revisiones, formatos de entrada, etc. tendrás que especificarlos aquí. Para obtener una lista completa puedes ver la sección «arguments» del Codex oficial de WordPress.
has_archive
Si se establece su valor en «true» (verdadero), las reglas de reescritura serán creadas para ti, permitiendo que un custom post type se archive en «http://misitio.com/posttype/» (por defecto).
Después de configurar esto, el enlace de los custom post types en el menú lateral será visible, y podrás añadir nuevas entradas, ver el listado de entradas y visitar las entradas publicadas:
![Enlace de los custom post types en el menú lateral Enlace de los custom post types en el menú lateral](/wp-content/uploads/2015/11/enlace-de-custom-post-types-en-el-menu-lateral.png)
Como hemos mencionado más arriba, son muchas cosas las que puedes modificar al crear custom post types, te sugerimos consultar la lista de «arguments» del Codex oficial de WordPress para obtener una descripción completa de cada opción y sus posibles valores:
![Ejemplo de custom post type: Producto Ejemplo de custom post type: Producto](/wp-content/uploads/2015/11/custom-post-type-producto.png)
Muy buen post. ¿Para cuando la segunda parte?
Gracias Pablo, seguramente @Martin estará trabajando en la 2da Parte la próxima semana 🙂
Intentare pero creo que mucho no entiendo
muchas gracias! muy buen post!
publicaste ya la segunda parte?
graciassss
excelente amigo, muchas gracias, muy clara la explicación
Es de fácil comprensión, pero veo que esa segunda entrega se quedó en el aire xD
Gracias 🙂