¡Qué maravilla! Guía definitiva de los tipos de contenido personalizados de WordPress: de cero a experto

Lectura en 3 minutos
2026-03-11
2026-06-04
2,130
Gano comisiones cuando compras a través de los enlaces de abajo, sin coste adicional para ti.

¿Qué son los tipos de artículos personalizados de WordPress?

WordPress incorpora dos tipos de contenido por defecto: “Artículos” y “Páginas”, pero a veces estos tipos no son suficientes para satisfacer las necesidades de estructuras web más complejas. Los “Tipos de Publicación Personalizados” (Custom Post Types, abreviados como CPT) son una de las funciones esenciales de WordPress, ya que permiten a los desarrolladores crear nuevos tipos de contenido con estructuras de datos, interfaces de administración y lógicas de visualización propias. Puedes pensar en ellos como «contenedores» diseñados específicamente para tipos de contenido concretos, como productos, portafolios, eventos, libros, etc.

Después de activar CPT (Custom Post Type), tu panel de administración de WordPress generará un elemento de menú independiente que cuenta con funciones propias de creación, edición y publicación, al igual que el módulo nativo de “Artículos”. Sin embargo, los datos de este nuevo tipo de contenido están completamente separados de los datos de los artículos y las páginas. Por ejemplo, un sitio web de comercio electrónico podría utilizar el módulo de “Artículos” por defecto para publicar blogs, mientras que crea un tipo de contenido personalizado llamado “Producto” para gestionar toda la información de los productos. Estos dos tipos de contenido no se interfieren entre sí en el panel de administración, y su visualización en la página web puede tener estilos y diseños completamente diferentes.

En resumen, CPT (Custom Post Type) rompe con las limitaciones de WordPress como plataforma de blogs tradicionales, permitiendo crear de manera flexible todo tipo de sitios web, como portales de noticias, tiendas en línea, sitios web corporativos o foros comunitarios, sin necesidad de depender de plugins de terceros que pueden ser complejos y afectar el rendimiento del sistema. Es una tecnología clave para lograr una arquitectura de contenido clara y una gestión eficiente de los sitios web.

Lecturas recomendadas Esencial para crear un sitio web profesional: guía completa para el desarrollo y la personalización de temas de WordPress.

¿Por qué usar tipos de artículos personalizados?

En el desarrollo de sitios web, organizar el contenido de manera correcta es la mitad del éxito. A medida que el contenido de los sitios web se vuelve cada vez más complejo, intentar incluir toda la información en los “artículos” o “páginas” puede generar muchos problemas.

Servidor de WordPress de UltaHost
Garantía de reembolso en 30 días, ancho de banda ilimitado y bases de datos, protección gratuita contra ataques DDoS; descuento del 50% al comprar por 3 años (versiones de 4 TB y 5 TB).

Lo primero que destaca es la conveniencia en la gestión y el mantenimiento. Cuando todo el contenido está mezclado, resulta extremadamente difícil para los administradores de sitios web encontrar elementos específicos o realizar operaciones en masa. Por ejemplo, un tipo de contenido llamado “evento” podría contener campos exclusivos como “fecha del evento”, “lugar del evento” o “enlace de inscripción”; gestionar estos datos junto con los artículos de blog comunes sería claramente caótico. Crear un CPT (Content Type Profile) independiente para cada tipo de contenido permite disponer de interfaces específicas para la publicación, edición y filtrado, lo que mejora significativamente la eficiencia de las operaciones en el backend.

En segundo lugar, está la claridad y la capacidad de expansión de las estructuras de datos. Los artículos y las páginas de WordPress utilizan tablas de datos y campos genéricos. Por otro lado, CPT (Custom Post Types) te permite definir campos exclusivos para tipos de contenido específicos (a través de campos personalizados o plugins de personalización avanzada), lo que permite almacenar, consultar y utilizar dichos datos de manera más eficiente. Por ejemplo, un tipo de contenido “película” en CPT podría contener campos como “director”, “duración” o “puntuación”, datos que no podrían ser almacenados de manera estructurada de manera efectiva en los artículos nativos de WordPress.

Además, está la flexibilidad en la presentación del lado del usuario (frontend). Esto se logra creando archivos de plantilla independientes para cada tipo de CPT (Componente de Pago). single-{cpt-slug}.php Y archive-{cpt-slug}.phpPuedes controlar completamente el estilo de presentación de estos elementos en la parte frontal de la página, logrando efectos de diseño completamente diferentes de los demás componentes del sitio web, sin necesidad de modificar un único modelo mediante complejos cálculos o condiciones lógicas.

Finalmente, hay el aspecto del rendimiento y la optimización de las consultas. Al ejecutar consultas en la base de datos, las consultas dirigidas a un CPT específico (por ejemplo, buscar todas las “actividades” pendientes) son mucho más eficientes que realizar búsquedas en una tabla grande que contiene todo tipo de contenido. Esto ayuda a mejorar la velocidad de carga del sitio web y su rendimiento general. Es una de las mejores prácticas para mejorar la profesionalidad y el rendimiento de un sitio web WordPress a nivel de arquitectura.

Lecturas recomendadas Guía definitiva para la creación de sitios web: El proceso completo y los pasos clave para construir un sitio web profesional desde cero

¿Cómo crear un tipo de artículo personalizado?

Existen dos métodos principales para crear un CPT (Content Provider Template): uno es registrarlo mediante la escritura de código, y el otro es utilizando plugins especializados.

Registro mediante código (método recomendado)

Para los desarrolladores, es posible modificar los temas a través del código. functions.php Registrar un CPT (Custom Post Type) en un archivo es el método más transparente y controlable. Esto aprovecha las funcionalidades que ofrece WordPress. register_post_type() Funciones. Este método vincula las funcionalidades con temas o plugins personalizados, lo que facilita la migración y evita la pérdida de datos en caso de que los plugins dejen de estar activos.

A continuación se presenta un ejemplo completo de código CPT (Creative Product Template) para crear un portfolio llamado “Portfolio”:

hosting.com Alojamiento compartido
Alto rendimiento con CPU AMD EPYC, almacenamiento SSD NVMe y LiteSpeed, asistencia interna de expertos 24 horas al día, 7 días a la semana, medidas de seguridad avanzadas como SSL, fuerza bruta, protección contra malware y DDoS, ahorro de hasta 73%.
function create_portfolio_post_type() {
    $labels = array(
        'name'               => '作品集',
        'singular_name'      => '作品',
        'menu_name'          => '作品集',
        'add_new'            => '添加新作品',
        'add_new_item'       => '添加新作品',
        'edit_item'          => '编辑作品',
        'new_item'           => '新作品',
        'view_item'          => '查看作品',
        'search_items'       => '搜索作品',
        'not_found'          => '未找到作品',
        'not_found_in_trash' => '回收站中未找到作品'
    );

$args = array(
        'labels'             => $labels,
        'public'             => true,
        'publicly_queryable' => true,
        'show_ui'            => true,
        'show_in_menu'       => true,
        'query_var'          => true,
        'rewrite'            => array( 'slug' => 'portfolio' ),
        'capability_type'    => 'post',
        'has_archive'        => true,
        'hierarchical'       => false,
        'menu_position'      => 5,
        'menu_icon'          => 'dashicons-format-gallery',
        'supports'           => array( 'title', 'editor', 'thumbnail', 'excerpt' )
    );

register_post_type( 'portfolio', $args );
}
add_action( 'init', 'create_portfolio_post_type' );

Este código se ejecuta a través de $labels El arreglo define el texto que se muestra en la interfaz posterior. $args El arreglo define las características de comportamiento del CPT (Content Provider Template), como si está disponible para acceso público o no, así como las reglas de reescritura de URL.slug Establecer como portfolioLas funciones soportadas (títulos, editor, imágenes destacadas, etc.) y los iconos del menú de administración. Finalmente, se utiliza… add_action() Un “gancho” (hook) es un mecanismo en WordPress que permite ejecutar una función específica durante el proceso de inicialización del sistema.

Crear utilizando un plugin.

Para los usuarios que no están familiarizados con el código, se pueden utilizar plugins para crear y administrar tipos de publicaciones personalizados (Custom Post Types, CPT) de manera rápida. Plugins populares como Custom Post Type UI y Toolset Types ofrecen interfaces de usuario intuitivas que permiten configurar todos los parámetros de un CPT con solo hacer clics, incluyendo etiquetas, parámetros y hasta clasificaciones personalizadas.

Las ventajas de los métodos basados en plugins son su facilidad de uso, ya que no se requiere conocer el código fuente. No obstante, su desventaja radica en que las funciones y el rendimiento dependen completamente de los mismos. Si en el futuro los plugins dejen de ser actualizados o dejen de ser compatibles con las versiones principales de WordPress, esto podría suponer riesgos para el sitio web. Además, la lógica funcional del sitio se dispersa entre varios plugins, lo que dificulta el mantenimiento a largo plazo y la migración del código. Se recomienda utilizar estos métodos en fases de prototipado rápido o en proyectos no críticos.

Lecturas recomendadas Una guía imprescindible para creadores de sitios web: el proceso completo de creación de un sitio web profesional de cero a uno

Crear una plantilla para un tipo de artículo personalizado

No es suficiente crear un CPT (Custom Post Type) únicamente en el backend; para que su contenido se muestre en la página de frontend de la manera esperada, es necesario crear el archivo de plantilla temática correspondiente. WordPress sigue reglas específicas de jerarquía de plantillas para encontrar y cargar estos archivos.

Para tener un control total sobre tu “portafolio” CPT, necesitas crear al menos dos archivos de plantilla:

Alojamiento compartido InterServer
Alojamiento compartido $2.50 USD al mes , primer mes $0.1 USD código promocional tryinterserver, 461 scripts de aplicaciones en la nube, instalación en un clic.

1. Plantilla de la página de archivos: Se utiliza para mostrar la lista de todos los trabajos. Nombre este archivo como… archive-portfolio.php Y colócalo en tu directorio de temas. WordPress lo utilizará al acceder al sitio. yoursite.com/portfolio/ En ese caso, se utilizará preferentemente este modelo. Puedes utilizarlo según tus necesidades. WP_Query O utilizar un ciclo principal para obtener y mostrar todos los artículos de tipo “portafolio”.

2. Plantilla de artículo individual: Se utiliza para mostrar la página de detalles de una obra en particular. Nombre este archivo como… single-portfolio.phpCuando se realiza una visita… yoursite.com/portfolio/your-work/ En ese momento, WordPress llamará a este tema. Puedes diseñar libremente su estructura interna y utilizar los campos personalizados definidos para este tipo de contenido (CPT, por sus siglas en inglés).

Lo siguiente es: archive-portfolio.php Un ejemplo de estructura básica:

¿¿php get_header();??

<section class="portfolio-archive">
    <h1>Nuestros trabajos</h1>
    <div class="portfolio-items">
        ¿php si (tiene publicaciones()): mientras (tiene publicaciones()): the_post();?&gt;
            <article class="portfolio-item">
                <a href="/es/</?php the_permalink(); ?>">
                    
                    <h2>¿¿¿php the_title();???</h2>
                </a>
                <p>¿¿php the_excerpt(); ??</p>
            </article>
        ¿¿php endwhile; endif;?&gt;
    </div>
    <?php the_posts_pagination(); ?>
</section>

¿¿¿php get_footer();???

Al crear estos templates exclusivos, el contenido de tu CPT (Content Promotion Tool) adquiere una “apariencia” única, que se integra a la perfección con el resto del sitio web mientras mantiene su propio carácter distintivo.

Funciones avanzadas y buenas prácticas

Después de registrarlo y mostrar el CPT con éxito, puedes optimizarlo aún más utilizando algunas funciones avanzadas y buenas prácticas.

Asociar una clasificación personalizada

Al igual que los “artículos” tienen un “catálogo de clasificación” y “etiquetas”, tus CPT (Content Production Tools) también pueden tener su propio sistema de clasificación. Por ejemplo, puedes crear una clasificación de “tipos de proyectos” para tu “colección de obras” (utilizando…). register_taxonomy() Funciones), de esta manera podrás clasificar tus trabajos en categorías como “Diseño de páginas web”, “Diseño de marcas”, “UI/UX”, etc., lo que facilitará el filtrado en la interfaz frontal y la gestión en el backend.

Usar campos personalizados avanzados

El cuadro de edición de artículos nativo de WordPress no es adecuado para la entrada de datos complejos. Al integrar plugins como Advanced Custom Fields (ACF) o Meta Box, puedes crear grupos de campos intuitivos para tus tipos de contenido personalizados (CPT, por sus siglas en inglés), como bibliotecas de imágenes, selectores, artículos asociados, selectores de fechas, etc. Esto permite transformar tu tipo de contenido personalizado de un simple contenedor de artículos en un potente sistema de ingreso de datos.

Reescribir las reglas y los enlaces fijos

Establecido al registrar el CPT. rewrite Los parámetros pueden afectar la estructura de la URL. Por favor, asegúrese de que, después de crear el CPT (Custom Post Type), visite la página de “Ajustes” -> “Enlaces Permanentes” en la interfaz de administración de WordPress y haga clic en el botón “Guardar Cambios” para actualizar las reglas de reescritura y garantizar que la nueva estructura de la URL se aplique efectivamente.

Consideraciones de rendimiento

Evita registrar funciones de soporte innecesarias para el CPT (como comentarios o referencias). Utilízalas de manera racional. WP_Query ¿Dónde está el baño? posts_per_page Y el mecanismo de caché, especialmente al consultar una gran cantidad de entradas CPT en la página de listas. Para consultas asociadas muy complejas, considere utilizar la API Transients para la caché.

Código de función de separación

Para entornos de producción, se recomienda encarecidamente que el código utilizado para crear los CPTs (Creative Product Templates) se extraiga del tema (theme) utilizado en el sitio web. functions.php Se deben extraer de su lugar actual y colocarlas en un “plugin de funciones personalizadas” independiente. La ventaja de hacer esto es que, incluso si en el futuro cambias de tema, estas definiciones de CPT (Custom Post Types) seguirán existiendo y los datos no se perderán, lo que permite separar las funciones de la forma en que se presentan en la página.

resúmenes

Los tipos de artículos personalizados son la clave para desbloquear el potencial de gestión de contenido de WordPress. Al permitirte crear estructuras de datos y lógicas de visualización independientes para diferentes tipos de contenido, WordPress pasa de ser una excelente plataforma de blogs a un sistema de gestión de contenido completo y versátil. Ya sea que quieras crear portafolios, administrar catálogos de productos, mostrar listas de eventos o desarrollar aplicaciones más complejas, los tipos de artículos personalizados (Custom Post Types, CPT) ofrecen soluciones claras, eficientes y fáciles de mantener.

Desde registrar elementos mediante código o utilizar plugins, pasando por el diseño de archivos de plantillas personalizadas, hasta la expansión del sistema mediante clasificaciones y campos avanzados, dominar CPT (Custom Post Types) implica poder utilizar WordPress de una manera más profesional y flexible. Seguir las mejores prácticas de separación del código funcional del tema asegura que la estructura de tu sitio web sea sencilla de mantener y robusta a largo plazo, sentando así una base sólida para su desarrollo futuro.

FAQ Preguntas más frecuentes

¿Afectarán los tipos de artículos personalizados la velocidad del sitio web?

La creación y utilización adecuada de tipos de artículos personalizados no tiene por sí misma un impacto negativo en la velocidad del sitio web. De hecho, al organizar el contenido de manera estructurada, se pueden generar consultas a la base de datos más precisas y eficientes, lo que puede mejorar la velocidad de carga de las páginas específicas.

Los factores que afectan la velocidad suelen estar relacionados con la complejidad de las consultas en los archivos de plantilla que se utilizan para generar los contenidos (CPT, o Custom Post Types), la presencia de una gran cantidad de imágenes que no han sido optimizadas para su carga, o el uso de consultas relacionadas complejas que no han sido almacenadas en caché. Seguir las mejores prácticas de rendimiento de WordPress, como controlar el número de consultas, utilizar la funcionalidad de paginación y activar el caché de objetos, es clave para mantener una buena velocidad en el sitio web.

¿Se perderán los artículos que se encuentran dentro de los tipos de artículos personalizados si los elimino?

Depende de la forma en que se realice la eliminación. Si simplemente has comentado el código que se utiliza para registrar los CPTs (Custom Post Types) o has desactivado el plugin que se encarga de crearlos, entonces no verás el menú de administración correspondiente a esos CPTs en la interfaz posterior de WordPress; no obstante, los datos de esos artículos seguirán existiendo en la base de datos de WordPress. wp_posts En la tabla de la base de datos, solo eso… post_type Los valores de los campos (como “portfolio”) ya no son reconocidos por el núcleo de WordPress como tipos de contenido públicos válidos.

En este caso, puedes recuperar el acceso modificando el código para registrar de nuevo el CPT (Content Type Profile) con el mismo nombre. En casos extremos, también es posible realizar consultas en la base de datos para eliminar manualmente esos artículos. post_type Modifica el nombre a “post” o “page”. Aquí hay una advertencia importante: antes de realizar cualquier cambio estructural significativo (como eliminar permanentemente un CPT), asegúrate de hacer una copia de seguridad de tu base de datos.

¿Cómo agregar campos personalizados a un tipo de artículo personalizado?

Existen principalmente dos métodos principales para agregar campos personalizados a CPT (Custom Post Types). El primero es utilizar el panel de “Campos Personalizados” incorporado en WordPress, pero su interfaz es sencilla y sus funciones son limitadas, lo que no lo hace adecuado para necesidades más complejas. El segundo método, y también el más recomendable, es utilizar plugins de gestión de campos de terceros, como Advanced Custom Fields (ACF) o Meta Box.

Estos complementos ofrecen una interfaz intuitiva que te permite crear grupos de campos (por ejemplo, “Información del producto”) y asignarlos a un CPT (Componente de Pago específico) concreto (como “Producto”). Luego, puedes ver estos cuadros de entrada de campos en la página de edición de dicho CPT. En las plantillas frontales, puedes utilizar las funciones proporcionadas por los complementos (como las de ACF, por ejemplo). get_field()Así, se pueden obtener y mostrar fácilmente los valores de estos campos.

¿Se pueden usar los tipos de artículos personalizados junto con las plantillas de página?

Sí, pero se trata de dos funciones diferentes que pueden combinarse. Las plantillas de página se utilizan para elegir diferentes diseños para una única “página”, mientras que las plantillas CPT (Content Type Templates) sirven para controlar la lógica de visualización de todo un tipo de contenido. Puedes crear una “plantilla de página” específica para un artículo perteneciente a un determinado tipo de contenido (CPT).

Por ejemplo, tienes un “miembro” CPT cuyo modelo predeterminado es… single-member.phpPuedes crear uno llamado… page-template-leadership.php El modelo de página correspondiente, y luego… WP_Query En la consulta, se buscan los miembros que ocupan un puesto específico dentro del grupo “CPT” y se les muestra información utilizando el diseño de este template. En el backend, es necesario crear una nueva página y seleccionar este template personalizado para ella. Esto demuestra la flexibilidad del sistema de templates de WordPress.