Creación de Post Type Personalizado en WordPress
Clase 25 de 35 • Curso de WordPress Práctico
Resumen
¿Cómo personalizar un post type en WordPress?
El desarrollo de un sitio web en WordPress puede ser tanto un arte como una ciencia, y la posibilidad de personalizar y manejar los tipos de publicaciones (post types) es un elemento fundamental para proporcionar versatilidad y creatividad en la presentación del contenido. En este contexto, entender cómo crear y adaptar un post type personalizado se convierte en un conocimiento esencial para desarrolladores web.
¿Qué es un post type personalizado?
Los post types personalizados en WordPress permiten expandir la funcionalidad básica del sistema de gestión de contenido al crear tipos de contenido únicos, adaptados específicamente a las necesidades del proyecto. Mientras que los posts y las páginas son tipos de contenido predeterminados en WordPress, los desarrolladores pueden crear tipos de post adicionales, como "Productos", para organiza y mostrar de una manera distinta.
¿Cómo crear un post type personalizado?
Para dar vida a un post type personalizado, es esencial tener claro el esquema de funcionamiento de WordPress y entender algunos de sus componentes claves. El proceso básico es el siguiente:
-
Crear la función:
- En el archivo
functions.php
, define una nueva función. - Usa la función
register_post_type()
que requiere dos argumentos principales: el nombre singular de tu post type (por ejemplo, 'product') y una serie de configuraciones asociadas.
- En el archivo
-
Configurar el post type:
- Configura diversas opciones como el nombre en singular, una descripción, y capacidades de soporte como editor, imagen destacada, revisiones, y estados de publicación.
- Ejemplo de cómo iniciar esto en código:
function productos_post_type() { $labels = array( 'name' => 'Productos', 'singular_name' => 'Producto', 'menu_name' => 'Productos', 'name_admin_bar' => 'Producto', // ...otros labels... ); $args = array( 'labels' => $labels, 'public' => true, 'has_archive' => true, 'supports' => array('title', 'editor', 'thumbnail', 'revisions'), 'show_in_rest' => true, // Enable Gutenberg editor // ...otros args... ); register_post_type('producto', $args); } add_action('init', 'productos_post_type');
-
Personalizar la apariencia en el administrador:
- Define la posición en el menú de administración:
'menu_position' => 5,
- Añade un ícono representativo en el menú usando
menu_icon
.
- Define la posición en el menú de administración:
-
Configurar enlaces permanentes:
- Después de registrar un nuevo post type, se requiere un ajuste en los enlaces permanentes para asegurar que el sistema actualice correctamente la estructura con el nuevo tipo de contenido.
-
Personalizar la vista previa en el tema:
- Modifica los archivos de plantilla como
single-[post_type].php
para ajustar cómo se presentan los posts en el frontend.
// Dentro de single-producto.php if (have_posts()) : while (have_posts()) : the_post(); the_title('<h1>', '</h1>'); the_content(); endwhile; endif;
- Modifica los archivos de plantilla como
¿Qué hacer si Gutenberg no se muestra correctamente?
En ocasiones, al implementar un nuevo post type, el editor Gutenberg no aparece automáticamente. Esto puede deberse a configuraciones omitidas en register_post_type
:
- Asegúrate de que
show_in_rest
está establecido entrue
para habilitar el editor de bloques.
¿Cómo mejorar y adaptar el diseño del producto?
Para personalizar la vista de tus productos, puedes trabajar con el archivo de plantilla single-producto.php
, ajustando los tamaños de las columnas, añadiendo estilos CSS personalizados, o modificando el HTML según el diseño deseado. Esta libertad creativa te permite adaptar el sitio web exactamente a las expectativas del cliente o negocio.
En resumen, crear y manejar post types personalizados es una habilidad crítica para cualquier desarrollador de WordPress, abriendo un abanico de posibilidades para organizar, personalizar y mostrar contenido de maneras únicas y eficientes. Experimenta, personaliza y lleva tus proyectos al siguiente nivel.