{"id":6488,"date":"2018-05-28T03:48:08","date_gmt":"2018-05-28T03:48:08","guid":{"rendered":"https:\/\/blog.hostinger.io\/es-tutoriales\/?p=6488"},"modified":"2025-12-18T22:48:02","modified_gmt":"2025-12-18T21:48:02","slug":"custom-post-types-wordpress","status":"publish","type":"post","link":"\/es\/tutoriales\/custom-post-types-wordpress\/","title":{"rendered":"C\u00f3mo crear un Custom Post Type en WordPress"},"content":{"rendered":"<p>WordPress tiene varios tipos de entradas para ayudarte a organizar el contenido de tu sitio web. Con ellos puedes crear f&aacute;cilmente un blog cronol&oacute;gico o mostrar p&aacute;ginas est&aacute;ticas.<\/p><p>Sin embargo, los tipos de entrada incorporados pueden no ser suficientes para sitios web grandes con contenido diverso. En ese caso, debes crear tu propio tipo de entrada.<\/p><p>Este art&iacute;culo te explicar&aacute; c&oacute;mo crear un tipo de entrada personalizado o custom post type en WordPress. Tambi&eacute;n aprender&aacute;s a personalizarlo para ampliar su funcionalidad.&nbsp;<\/p><p class=\"has-text-align-center\"><a href=\"https:\/\/assets.hostinger.com\/content\/tutorials\/pdf\/Mega-WordPress-Cheat-ES.pdf\" target=\"_blank\" rel=\"noreferrer noopener\">Descarga la hoja de trucos de WordPress definitiva<\/a><\/p><p>\n\n\n\n\n\n\n\n<div class=\"protip\"><div class=\"protip__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path d=\"M1.49234 23.5024C1.23229 23.5024 0.972242 23.4024 0.782206 23.2123C0.562165 22.9923 0.452144 22.6822 0.502153 22.3722C0.562165 21.9221 1.14227 17.9113 3.00262 16.351C3.63274 15.8209 4.43289 15.5509 5.26305 15.5609C6.09321 15.5909 6.87335 15.9109 7.47347 16.4911C8.6937 17.6913 8.76371 19.6717 7.6435 20.9919C6.0832 22.8523 2.08245 23.4324 1.63237 23.4924C1.59236 23.4924 1.54235 23.4924 1.50234 23.4924L1.49234 23.5024ZM5.16303 17.5613C4.84297 17.5613 4.53291 17.6713 4.29287 17.8813C3.60274 18.4614 3.07264 19.9317 2.75258 21.242C4.06282 20.9219 5.5331 20.3918 6.11321 19.7017C6.55329 19.1716 6.54329 18.3814 6.0832 17.9213C5.85316 17.7013 5.5431 17.5713 5.20304 17.5613C5.19304 17.5613 5.17303 17.5613 5.16303 17.5613ZM11.7243 21.8821C11.4942 21.8821 11.2642 21.8021 11.0841 21.652C10.8541 21.462 10.7241 21.1819 10.7241 20.8819V15.9109L8.08358 13.2705H3.11264C2.81259 13.2705 2.53254 13.1404 2.3425 12.9104C2.15246 12.6803 2.07245 12.3803 2.12246 12.0902C2.19247 11.7102 2.84259 8.36953 4.70294 7.12929C6.33325 6.04909 8.96375 6.49918 10.244 6.80923C11.5442 4.96889 13.2546 3.4286 15.2349 2.33839C17.4553 1.11816 19.9858 0.518051 22.4963 0.498047C23.0464 0.498047 23.4865 0.948132 23.4865 1.49824C23.4865 5.0389 22.3763 9.97983 17.1753 13.7605C17.4853 15.0408 17.9354 17.6613 16.8552 19.2816C15.615 21.1419 12.2744 21.7921 11.8943 21.8621C11.8343 21.8721 11.7743 21.8821 11.7143 21.8821H11.7243ZM12.7245 16.181V19.6016C13.7146 19.2916 14.7948 18.7915 15.2049 18.1814C15.675 17.4812 15.605 16.091 15.385 14.9008C14.5248 15.3808 13.6346 15.8109 12.7245 16.181ZM9.66388 12.0302L11.9643 14.3307C13.1845 13.8306 14.3648 13.2204 15.485 12.5103C19.9358 9.51974 21.2361 5.60901 21.4561 2.53843C19.6157 2.67846 17.8254 3.20856 16.2051 4.09872C14.2847 5.14892 12.6544 6.68921 11.4942 8.54956C10.7841 9.65977 10.174 10.82 9.66388 12.0302ZM4.39289 11.2701H7.81353C8.1936 10.3599 8.63368 9.46974 9.11377 8.60957C7.92355 8.38953 6.51329 8.31952 5.81315 8.78961C5.19304 9.19968 4.70294 10.3099 4.39289 11.2701Z\" fill=\"#673DE6\"\/>\n                <\/svg>\n                <p class=\"protip__title\">\n                   &iquest;Qu&eacute; son los Custom Post Types de WordPress?\n                <\/p>\n            <\/div>\n            <p class=\"protip__content\">El tipo de entrada personalizado de WordPress es una categor&iacute;a de contenido adicional que los usuarios crean para organizar el contenido de su sitio web. Es &uacute;til si tu sitio web de WordPress tiene contenido variado que no pertenece a los tipos de entrada predeterminados de WordPress.<\/p><\/div>\n\n\n\n<\/p><h2 class=\"wp-block-heading\" id=\"h-tipos-de-entradas-de-wordpress\">Tipos de entradas de WordPress<\/h2><p>Aunque puedes asignar categor&iacute;as para organizar todo tipo de contenido, tus publicaciones aparecer&aacute;n en una lista cuando est&eacute;n agrupadas en el mismo tipo de publicaci&oacute;n. Esto dificulta el seguimiento de tus publicaciones.<\/p><p>Por defecto, WordPress tiene siete tipos de entradas:<\/p><ul class=\"wp-block-list\">\n<li><strong>Entradas:<\/strong> categor&iacute;a para entradas regulares. El contenido t&iacute;pico de este tipo incluye una entrada de blog.<\/li>\n\n\n\n<li><strong>P&aacute;ginas:<\/strong> muestra contenido est&aacute;tico que no est&aacute; ordenado por fecha.<\/li>\n\n\n\n<li><strong>Archivos adjuntos<\/strong>: todos los medios del sitio web, incluidas im&aacute;genes, v&iacute;deos o archivos PDF.<\/li>\n\n\n\n<li><strong>Revisiones: <\/strong>&nbsp;versiones guardadas de todos los tipos de entrada.<\/li>\n\n\n\n<li><strong>Men&uacute;s de navegaci&oacute;n<\/strong>: lista de enlaces que los visitantes de tu sitio web pueden utilizar para encontrar informaci&oacute;n espec&iacute;fica.<\/li>\n\n\n\n<li><strong>CSS personalizado<\/strong>: tipo que puedes modificar para personalizar tu tema de WordPress.<\/li>\n\n\n\n<li><strong>Conjuntos de cambios:<\/strong> el seguimiento de los cambios realizados en el personalizador.<\/li>\n<\/ul><p>Los tipos de entrada personalizados de WordPress te permiten elegir una secci&oacute;n concreta para tu contenido. Puedes agrupar r&aacute;pidamente el contenido sin elegir categor&iacute;as y realizar f&aacute;cilmente un seguimiento de las entradas en diferentes secciones.<\/p><p>Los custom post types de WordPress tambi&eacute;n ofrecen varias opciones de personalizaci&oacute;n. Esto te permite ampliar su funcionalidad m&aacute;s all&aacute; de las entradas predeterminadas.<\/p><p>Por ejemplo, puedes mover el men&uacute; de tipo de entrada personalizada, cambiar el aspecto de la pantalla de edici&oacute;n y activar funciones como las im&aacute;genes destacadas o los excerpts.&nbsp;<\/p><h2 class=\"wp-block-heading\" id=\"h-elementos-de-un-custom-post-type-en-wordpress\">Elementos de un custom post type en WordPress<\/h2><p>Antes de crear tipos de entrada personalizados, debes entender los t&eacute;rminos <strong>array <\/strong>y <strong>element<\/strong>. Estas son partes esenciales del c&oacute;digo de tu tipo de entrada personalizado.<\/p><p>Un <strong>array <\/strong>es una estructura de datos que almacena pares de clave y valor conocidos como <strong>elements<\/strong>. En este caso, reserva las propiedades del tipo de entrada personalizado.<\/p><p>Para crear un tipo de entrada personalizado de WordPress, hay tres matrices que contienen diferentes elementos: <strong>$args<\/strong>, <strong>$labels <\/strong>y <strong>$supports<\/strong>. La matriz asociativa <strong>$args <\/strong>es la abreviatura de argumentos, que incluye varios pares clave-valor, entre ellos:<\/p><ul class=\"wp-block-list\">\n<li><strong>description:<\/strong> un resumen breve y descriptivo del tipo de entrada. S&oacute;lo puedes mostrarlo en la plantilla del tipo de entrada.<\/li>\n\n\n\n<li><strong>public:<\/strong> cambia la visibilidad de los tipos de entrada personalizados de WordPress para autores y visitantes. Elige <strong>TRUE <\/strong>para que aparezca en el Panel de WordPress y en la consulta personalizada de los visitantes.<\/li>\n\n\n\n<li><strong>menu_position:<\/strong> define la ubicaci&oacute;n del nuevo tipo de entrada en el men&uacute; de administraci&oacute;n de WordPress. Consulta la p&aacute;gina del <a href=\"https:\/\/codex.wordpress.org\/Main_Page\" target=\"_blank\" rel=\"noreferrer noopener\">codex<\/a> de WordPress para conocer su valor y posiciones.<\/li>\n\n\n\n<li><strong>has_archive:<\/strong> determina los archivos del tipo de entrada personalizado, la estructura de URL y el nombre del slug en funci&oacute;n del par&aacute;metro 1 de <strong>register_post_types()<\/strong>.<\/li>\n\n\n\n<li><strong>show_in_admin_bar:<\/strong> altera la visibilidad del tipo de entrada en la barra superior de administraci&oacute;n, en la secci&oacute;n <strong>+New<\/strong>.<\/li>\n\n\n\n<li><strong>show_in_nav_menus:<\/strong> cambia si puedes a&ntilde;adir entradas de este tipo a los men&uacute;s de navegaci&oacute;n creados a trav&eacute;s de <strong>Apariencia <\/strong>&rarr; <strong>Men&uacute;s<\/strong>.<\/li>\n\n\n\n<li><strong>query_var:<\/strong> establece si los visitantes del sitio pueden introducir el tipo y el t&iacute;tulo de una entrada como consulta en la URL para verla.<\/li>\n<\/ul><p>Adem&aacute;s de los elementos, <strong>$args <\/strong>contiene las matrices <strong>$labels <\/strong>y <strong>$supports <\/strong>que contienen diferentes pares clave-valor.&nbsp;<\/p><p>Te recomendamos crear una variable <strong>$labels <\/strong>separada para guardar todos los pares clave-valor para que el c&oacute;digo sea m&aacute;s limpio y f&aacute;cil de entender.&nbsp;<\/p><p>La matriz <strong>$label <\/strong>define el texto del tipo de entrada personalizado y contiene las siguientes claves:<\/p><ul class=\"wp-block-list\">\n<li><strong>name:<\/strong> el nombre plural general del tipo de entrada<\/li>\n\n\n\n<li><strong>singular_name:<\/strong> el nombre de una entrada &uacute;nica del tipo personalizado<\/li>\n\n\n\n<li><strong>add_new:<\/strong> sustituye el texto &ldquo;A&ntilde;adir nuevo&rdquo;<\/li>\n\n\n\n<li><strong>add_new_item:<\/strong> cambia el texto de &ldquo;A&ntilde;adir nueva entrada&rdquo;<\/li>\n\n\n\n<li><strong>edit_item:<\/strong> ajusta el texto de &ldquo;Editar publicaci&oacute;n&rdquo;<\/li>\n\n\n\n<li><strong>featured_image:<\/strong> modifica la &ldquo;Imagen destacada&rdquo; en el editor de entradas<\/li>\n\n\n\n<li><strong>set_featured_image: <\/strong>&nbsp;sustituye a &ldquo;Establecer imagen destacada&rdquo;<\/li>\n\n\n\n<li><strong>menu_name:<\/strong> altera el texto del enlace de nivel superior. El texto por defecto del enlace es la clave del nombre<\/li>\n<\/ul><p>Mientras tanto, la matriz <strong>$supports <\/strong>contiene elementos que definen las caracter&iacute;sticas del tipo de entrada personalizado. El valor <strong>TRUE <\/strong>habilita las siguientes caracter&iacute;sticas:<\/p><ul class=\"wp-block-list\">\n<li>T&iacute;tulo<\/li>\n\n\n\n<li>Editor<\/li>\n\n\n\n<li>Autor<\/li>\n\n\n\n<li>Miniatura<\/li>\n\n\n\n<li>Extracto<\/li>\n\n\n\n<li>Trackbacks<\/li>\n\n\n\n<li>Campos personalizados<\/li>\n\n\n\n<li>Comentarios<\/li>\n\n\n\n<li>Revisiones<\/li>\n\n\n\n<li>Atributos de la p&aacute;gina<\/li>\n\n\n\n<li>Postformatos<\/li>\n<\/ul><h2 class=\"wp-block-heading\" id=\"h-como-crear-un-custom-post-type-en-wordpress\">C&oacute;mo crear un custom post type en WordPress<\/h2><p>Hay tres formas diferentes de a&ntilde;adir custom post type en WordPress, y cada una tiene sus pros y sus contras:<\/p><ul class=\"wp-block-list\">\n<li><strong>Usar un plugin normal:<\/strong> la m&aacute;s sencillo, pero el custom post type se borrar&aacute; si desinstalas o desactivas el plugin.<\/li>\n\n\n\n<li><strong>Editar el archivo functions.php del tema<\/strong>: no requiere una herramienta adicional, pero este m&eacute;todo no conserva los datos tras la actualizaci&oacute;n del tema.<\/li>\n\n\n\n<li><strong>Crear un plugin espec&iacute;fico para el sitio<\/strong>: conserva los datos y es muy personalizable, pero requiere conocimientos t&eacute;cnicos.<\/li>\n<\/ul><p>En este art&iacute;culo, utilizaremos el tercer m&eacute;todo. Antes de continuar, te recomendamos que leas nuestro tutorial sobre <a href=\"\/es\/tutoriales\/tutorial-wordpress-plugins-crear-plugin-wordpress\/\">c&oacute;mo crear un plugin<\/a> de WordPress para saber m&aacute;s sobre el c&oacute;digo personalizado.<\/p><p>Para crear tipos de entrada personalizados, utiliza la funci&oacute;n <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/register_post_type\/\" target=\"_blank\" rel=\"noreferrer noopener\">register_post_type()<\/a>. Esta funci&oacute;n recibe dos par&aacute;metros: el <strong>nombre del custom post type <\/strong>y la matriz <strong>$args<\/strong>.<\/p><p>El c&oacute;digo del plugin tambi&eacute;n debe contener funciones personalizadas que llamen a <strong>register_post_type()<\/strong>. Recuerda conectar estas funciones al hook de acci&oacute;n <strong>init <\/strong>para permitir que el tipo de entrada personalizado se registre correctamente.<\/p><p>Para evitar conflictos con otros plugins, tu funci&oacute;n personalizada debe tener un prefijo como <strong>ht_<\/strong>.<\/p><p>Aqu&iacute; tienes un ejemplo de c&oacute;digo para un plugin de tipo de entrada <strong>Entradas personalizadas<\/strong>:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">&lt;?php\n\/*\nPlugin Name: Custom Post Types\nDescription: Add post types for custom articles\nAuthor: Hostinger Dev\n*\/\n\/\/ Hook ht_custom_post_custom_article() to the init action hook\nadd_action( 'init', 'ht_custom_post_custom_article' );\n\/\/ The custom function to register a custom article post type\nfunction ht_custom_post_custom_article() {\n    \/\/ Set the labels. This variable is used in the $args array\n    $labels = array(\n        'name'               =&gt; __( 'Entradas personalizadas' ),\n        'singular_name'      =&gt; __( 'Entrada personalizada' ),\n        'add_new'            =&gt; __( 'Entrada personalizada' ),\n        'add_new_item'       =&gt; __( 'A&ntilde;adir entrada personalizada' ),\n        'edit_item'          =&gt; __( 'Editar entrada personalizada' ),\n        'new_item'           =&gt; __( 'Nueva entrada personalizada' ),\n        'all_items'          =&gt; __( 'Todas las entradas personalizada' ),\n        'view_item'          =&gt; __( 'Ver entrada personalizada ),\n        'search_items'       =&gt; __( 'Buscar entrada personalizada' ),\n        'featured_image'     =&gt; 'Poster',\n        'set_featured_image' =&gt; 'Add Poster'\n    );\n\/\/ The arguments for our post type, to be entered as parameter 2 of register_post_type()\n    $args = array(\n        'labels'            =&gt; $labels,\n        'description'       =&gt; 'Holds our custom article post specific data',\n        'public'            =&gt; true,\n        'menu_position'     =&gt; 5,\n        'supports'          =&gt; array( 'title', 'editor', 'thumbnail', 'excerpt', 'comments', 'custom-fields' ),\n        'has_archive'       =&gt; true,\n        'show_in_admin_bar' =&gt; true,\n        'show_in_nav_menus' =&gt; true,\n        'query_var'         =&gt; true,\n    );\n    \/\/ Call the actual WordPress function\n    \/\/ Parameter 1 is a name for the post type\n    \/\/ Parameter 2 is the $args array\n    register_post_type('article', $args);\n}<\/pre><p>Ten en cuenta que el c&oacute;digo puede variar en funci&oacute;n del custom post type. Una vez que hayas terminado de escribir el c&oacute;digo, sigue estos pasos para convertirlo en un plugin:<\/p><ol class=\"wp-block-list\">\n<li>Copia y pega el c&oacute;digo en un editor de texto. Por ejemplo, utilizaremos <strong>TextEdit <\/strong>de<strong> <\/strong>MacOS.<\/li>\n\n\n\n<li>Guarda el archivo. Nombra el archivo <strong><strong>custom-post-type.php<\/strong>.<\/strong><\/li>\n\n\n\n<li>Haz clic en <strong>Guardar<\/strong>.<\/li>\n<\/ol><figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"822\" height=\"720\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2024\/05\/image-131.png\/public\" alt=\"Guardar texto en TextEdit\" class=\"wp-image-40101\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2024\/05\/image-131.png\/w=822,fit=scale-down 822w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2024\/05\/image-131.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2024\/05\/image-131.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2024\/05\/image-131.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 822px) 100vw, 822px\" \/><\/figure><ol class=\"wp-block-list\" start=\"4\">\n<li>Abre el gestor de archivos de tu cliente FTP o de tu cuenta de alojamiento. Para los usuarios de Hostinger, ve a tu <strong>hPanel <\/strong>&rarr; <strong>Hosting <\/strong>&rarr; <strong>Administrar <\/strong><strong>&rarr; Archivos &rarr; <\/strong><strong>Administrador de Archivos<\/strong>.<\/li>\n\n\n\n<li>Dentro del <strong>Administrador de Archivos<\/strong>, navega hasta <strong>public_html <\/strong>&rarr; <strong>wp-content <\/strong>&rarr; <strong>plugins<\/strong>.<\/li>\n\n\n\n<li>Crea una nueva carpeta y n&oacute;mbrala <strong>custom-post-type<\/strong>.<\/li>\n\n\n\n<li>Pega el archivo en la carpeta.<\/li>\n<\/ol><figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"424\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-34.png\/w=1024,h=1024,fit=scale-down\" alt=\"Administrador de archivos de Hostinger\" class=\"wp-image-36369\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-34.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-34.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-34.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-34.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><ol class=\"wp-block-list\" start=\"8\">\n<li>Accede a tu panel de control de WordPress. Ve a <strong>Plugins <\/strong>&rarr; <strong>Plugins instalados<\/strong>.<\/li>\n\n\n\n<li>Busca el plugin <strong>Entradas personalizadas <\/strong>y haz clic en <strong>Activar<\/strong>.<\/li>\n<\/ol><figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"298\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/Captura-de-pantalla-2023-11-08-a-las-1.42.41-p.m.png\/w=1024,h=1024,fit=scale-down\" alt=\"Secci&oacute;n de plugins de WordPress\" class=\"wp-image-36370\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/Captura-de-pantalla-2023-11-08-a-las-1.42.41-p.m.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/Captura-de-pantalla-2023-11-08-a-las-1.42.41-p.m.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/Captura-de-pantalla-2023-11-08-a-las-1.42.41-p.m.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/Captura-de-pantalla-2023-11-08-a-las-1.42.41-p.m.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><ol class=\"wp-block-list\" start=\"10\">\n<li>Actualiza la p&aacute;gina. Deber&iacute;as ver el tipo de entrada <strong>Art&iacute;culos personalizados <\/strong>en el men&uacute; de administraci&oacute;n de WordPress.<\/li>\n<\/ol><figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"355\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-35.png\/w=1024,h=1024,fit=scale-down\" alt=\"Entradas personalizadas ejemplo en WordPress\" class=\"wp-image-36371\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-35.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-35.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-35.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-35.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><p>Puedes crear un n&uacute;mero ilimitado de tipos de entradas personalizadas. Sin embargo, demasiados tipos de entrada personalizados pueden ralentizar el descubrimiento de la <a href=\"\/es\/tutoriales\/guia-para-principiantes-api-rest-wordpress\/\">API REST<\/a> y complicar la barra de administraci&oacute;n.<\/p><h2 class=\"wp-block-heading\" id=\"h-como-personalizar-el-nuevo-tipo-de-entrada\">C&oacute;mo personalizar el nuevo tipo de entrada<\/h2><p>Puede que necesites personalizar tu nuevo tipo de entrada para diferenciarlo de otros contenidos. Antes de personalizarlo, debes crear archivos de plantilla en el directorio de tu tema activo.<\/p><p>Necesitas dos archivos de plantilla para la personalizaci&oacute;n: <strong>single-{post_type}.php <\/strong>y <strong>archive-{post_type}.php<\/strong>. Son plantillas para una entrada individual y para la p&aacute;gina de archivo del tipo personalizado, respectivamente.<\/p><p>WordPress utilizar&aacute; los archivos predeterminados <strong>single.php <\/strong>y <strong>archive.php <\/strong>si no creas estas plantillas. Puesto que todas las entradas y archivos hacen referencia a esos dos archivos, personalizarlos cambiar&aacute; todo el sitio.<\/p><p>La mejor forma de crear archivos de plantilla es duplicar los archivos <strong>single.php <\/strong>y <strong>archive.php <\/strong>existentes de tu tema. Este m&eacute;todo mantiene la estructura del tema de tu sitio y establece la etiqueta de plantilla necesaria, simplificando el proceso de personalizaci&oacute;n.<\/p><p>Aqu&iacute; tienes los pasos para hacerlo:<\/p><ol class=\"wp-block-list\">\n<li>Accede al Administrador de archivos de tu cliente FTP o de tu cuenta de alojamiento.<\/li>\n\n\n\n<li>Localiza la carpeta de tu tema activo. En nuestro caso, est&aacute; en <strong>\/public_html\/wp-content\/themes\/twentytwentyone<\/strong>.<\/li>\n\n\n\n<li>Copia los archivos <strong>single.php <\/strong>y <strong>archive.php <\/strong>y p&eacute;galos fuera de esa carpeta.<\/li>\n<\/ol><figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"450\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-36.png\/w=1024,h=1024,fit=scale-down\" alt=\"Administrador de archivos de Hostinger\" class=\"wp-image-36372\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-36.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-36.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-36.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-36.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><ol class=\"wp-block-list\" start=\"4\">\n<li>Cambiales el nombre en funci&oacute;n del par&aacute;metro 1 de tu <strong>register_post_type()<\/strong>. Como nuestro par&aacute;metro 1 es <strong>article<\/strong>, los nombres son <strong>single-article.php <\/strong>y <strong>archive.article.php<\/strong>.<\/li>\n\n\n\n<li>Vuelve a mover los archivos a la carpeta <strong>twentytwentyone<\/strong>.<\/li>\n<\/ol><figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"337\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-37.png\/w=1024,h=1024,fit=scale-down\" alt=\"Administrador de archivos de hPanel\" class=\"wp-image-36373\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-37.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-37.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-37.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2023\/11\/image-37.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><ol class=\"wp-block-list\" start=\"6\">\n<li>Repite los pasos dos y tres para otras plantillas de tipos de entrada personalizados.<\/li>\n<\/ol><p>\n\n\n\n<div class=\"announcement-block announcement-block--important\">\n            <span class=\"announcement-block__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n                          d=\"M12 22.5C17.799 22.5 22.5 17.799 22.5 12C22.5 6.20101 17.799 1.5 12 1.5C6.20101 1.5 1.5 6.20101 1.5 12C1.5 17.799 6.20101 22.5 12 22.5ZM13.637 7.65198C13.637 6.74791 12.9041 6.01501 12 6.01501C11.0959 6.01501 10.363 6.74791 10.363 7.65198C10.5335 9.53749 10.875 13.383 10.875 13.383C10.875 14.0043 11.3787 14.508 12 14.508C12.6213 14.508 13.125 14.0043 13.125 13.383V13.38L13.637 7.65198ZM11.9927 15.714C11.3714 15.714 10.8677 16.2177 10.8677 16.839C10.8677 17.4603 11.3714 17.964 11.9927 17.964H12.0073C12.6286 17.964 13.1323 17.4603 13.1323 16.839C13.1323 16.2177 12.6286 15.714 12.0073 15.714H11.9927Z\"\n                          fill=\"#FEA419\"\/>\n                <\/svg>\n                Important\n            <\/span>\n            <p class=\"announcement-block__content\">\n                <strong>&iexcl;Importante! <\/strong>Los<strong> <\/strong>temas con la misma estructura para entradas y p&aacute;ginas no tendr&aacute;n archivos <strong>single.php <\/strong>y archive.php. Estos temas s&oacute;lo utilizan el archivo<strong> singular.php<\/strong>.\n            <\/p><\/div>\n\n\n\n<\/p><p>Para personalizar los archivos de plantilla, desc&aacute;rgalos y ed&iacute;talos con un editor de texto. Si utilizas el servicio de <a href=\"\/es\/hosting-web\">alojamiento web<\/a> de Hostinger, ed&iacute;talos directamente en el Administrador de archivos.<\/p><p>Una vez guardados los archivos, los cambios s&oacute;lo se aplicar&aacute;n a la p&aacute;gina de archivo y a la entrada individual del tipo personalizado.<\/p><h3 class=\"wp-block-heading\" id=\"h-anadir-un-meta-box-a-un-custom-post-type\">A&ntilde;adir un meta box a un custom post type<\/h3><p>El cuadro meta o meta box es una ventana de la pantalla de edici&oacute;n que permite a los usuarios a&ntilde;adir metadatos de las entradas. Es &uacute;til para a&ntilde;adir o modificar la informaci&oacute;n de las entradas, como los detalles del autor, los controles de publicaci&oacute;n y el slug personalizado.<\/p><p>Aunque WordPress incluye meta boxes por defecto, puede que necesites uno espec&iacute;fico para tu tipo de entrada personalizada. Por ejemplo, el tipo de entrada personalizada <strong>Pel&iacute;culas <\/strong>puede requerir el metabox <strong>G&eacute;nero<\/strong>.<\/p><p>Utilizar un cuadro meta te ayuda a a&ntilde;adir metadatos a tu contenido m&aacute;s r&aacute;pidamente. En lugar de introducir el valor individualmente, puedes hacer clic en los datos del cuadro meta para introducirlos.<\/p><p>Para crear un cuadro meta personalizado, edita el <strong>archivo functions.php <\/strong>de tu tema o el c&oacute;digo del plugin espec&iacute;fico del sitio. En este tutorial, a&ntilde;adiremos el c&oacute;digo personalizado del nuevo cuadro meta al archivo del plugin.<\/p><p>Dado que el c&oacute;digo var&iacute;a en funci&oacute;n del contenido y la ubicaci&oacute;n de la meta box, consulta el codex de WordPress para obtener m&aacute;s informaci&oacute;n. En este tutorial, explicaremos c&oacute;mo crear una meta box de <strong>Autor <\/strong>personalizada:<\/p><ol class=\"wp-block-list\">\n<li>Localiza el archivo <strong>custom-post-type.php <\/strong>en el gestor de archivos de tu alojamiento o en tu cliente FTP.<\/li>\n\n\n\n<li>Haz doble clic en el archivo para abrir la pantalla del editor. Alternativamente, descarga y abre el archivo en un editor de texto o de c&oacute;digo.<\/li>\n\n\n\n<li>Crea una metabox personalizada vac&iacute;a introduciendo el siguiente c&oacute;digo:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\/\/ Add meta box \nadd_action(\"add_meta_boxes\", \"add_author_meta_box\");\nfunction add_author_meta_box()\n{\n    add_meta_box(\n    \"author_meta_box\", \/\/ Meta box ID\n    \"Author Details\", \/\/ Meta box title\n    \"author_meta_box_callback\", \/\/ Meta box callback function\n    \"article\", \/\/ The custom post type parameter 1\n    \"side\", \/\/ Meta box location in the edit screen\n    \"high\" \/\/ Meta box priority\n); \n}\nfunction author_meta_box_callback()\n{ \n  wp_nonce_field(&lsquo;author-nonce&rsquo;, &lsquo;meta-box-nonce&rsquo;);\nglobal $post;\nplaceholder\n}<\/pre><ol class=\"wp-block-list\" start=\"4\">\n<li>A&ntilde;ade el contenido de la meta box sustituyendo el valor del<strong> marcador de posici&oacute;n<\/strong>. Para este tutorial, a&ntilde;adiremos los campos nombre de autor e ID utilizando el siguiente c&oacute;digo.<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\/\/ Add meta box content \n ?&gt;\n  &lt;th&gt;&lt;label for=\"author_name_field\"&gt;Author Name&lt;\/label&gt;&lt;th&gt;\n  &lt;td&gt;&lt;input \ntype=\"text\"\nid=\"author_name\" \nclass=\"regular-text\" \nname=&ldquo;Author_Name&rdquo; \nvalue=&ldquo;&rdquo; \n\/&gt; \n    &lt;td&gt; \n    &lt;th&gt;&lt;label for=\"author_id_field\"&gt;Author ID&lt;\/label&gt;&lt;th&gt;\n  &lt;td&gt;&lt;input \ntype=\"text\" \nid=\"author_id\" \nclass=\"regular-text\"\nname=&ldquo;Author_ID&rdquo;\nValue=&rdquo;&rdquo;\n\/&gt; \n    &lt;td&gt; \n  &lt;?php <\/pre><ol class=\"wp-block-list\" start=\"5\">\n<li>Al final del c&oacute;digo, a&ntilde;ade el siguiente fragmento para guardar los valores introducidos:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\/\/ Save meta box data\nadd_action ( 'save_post', 'author_save_postdata');\nfunction author_save_postdata( $post_id ) {\n\/\/ If this is an autosave, our form has not been submitted\nif ( defined( 'DOING_AUTOSAVE' ) &amp;&amp; DOING_AUTOSAVE ) \nreturn $post_id;\n  \/\/ Retrieve post id\n  If (&lsquo;article&rsquo; !== get_post_type() ) {\n    return $post_id\n}\n   \/\/ Check the user's permissions\n     if ( 'page' == $_POST['post_type'] ) {\n  \nif ( ! current_user_can( 'edit_page', $post_id ) )\nreturn $post_id;\n  \n} else {\n  \nif ( ! current_user_can( 'edit_post', $post_id ) )\nreturn $post_id;\n}\n  \n\/* OK, it is safe to save the data now. *\/\n  \n\/\/ Sanitize user input.\n$mydata = sanitize_text_field( $_POST['Author_Name'] );\n$mydata = sanitize_text_field( $_POST['Author_ID'] );\n  \n\/\/ Update the meta field in the database.\nupdate_post_meta( $post_id, 'Author_Name', $_POST['Author_Name'] ); \nupdate_post_meta( $post_id, 'Author_ID', $_POST['Author_ID'] ); \n }<\/pre><ol class=\"wp-block-list\" start=\"6\">\n<li>En el editor de c&oacute;digo del gestor de archivos, haz clic en el <strong>icono del disco <\/strong>de<strong> <\/strong>la parte superior derecha para guardar el cambio. Si editas el c&oacute;digo localmente, guarda y vuelve a subir el archivo actualizado.<\/li>\n<\/ol><p>El nuevo cuadro meta deber&iacute;a aparecer si abres la pantalla de edici&oacute;n de tu tipo de entrada personalizado.<\/p><p>Para asegurarte de que el meta box funciona correctamente, introduce textos en el campo designado y actualiza la entrada. El valor introducido deber&iacute;a aparecer en los campos personalizados.<\/p><p>Si necesitas familiarizarte m&aacute;s con PHP, utiliza el plugin Meta Box para generar autom&aacute;ticamente el c&oacute;digo. Como s&oacute;lo genera el c&oacute;digo del contenido de las meta boxes, debes escribir t&uacute; mismo la funci&oacute;n <strong>add_metabox ()<\/strong>.<\/p><p>Despu&eacute;s de descargar e instalar el plugin, sigue estos pasos:<\/p><ol class=\"wp-block-list\">\n<li>En la barra lateral de WordPress, ve a <strong>Plugins <\/strong>&rarr; <strong>Plugins instalados<\/strong>.<\/li>\n\n\n\n<li>Busca el plugin <strong>Meta Box <\/strong>y haz clic en <strong>Acerca de <\/strong><strong>&rarr; Ir a Generador Online<\/strong>.<\/li>\n<\/ol><ol class=\"wp-block-list\" start=\"3\">\n<li>Crea un cuadro meta personalizado.<\/li>\n\n\n\n<li>Haz clic en <strong>Generar c&oacute;digo <\/strong>&rarr; <strong>Copiar<\/strong>.<\/li>\n<\/ol><ol class=\"wp-block-list\" start=\"5\">\n<li>Pega el c&oacute;digo en tu archivo <strong>functions.php <\/strong>o <strong>custom-post-type.php.<\/strong><\/li>\n<\/ol><p>\n\n\n\n        <div class=\"protip\">\n            <div class=\"protip__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path d=\"M1.49234 23.5024C1.23229 23.5024 0.972242 23.4024 0.782206 23.2123C0.562165 22.9923 0.452144 22.6822 0.502153 22.3722C0.562165 21.9221 1.14227 17.9113 3.00262 16.351C3.63274 15.8209 4.43289 15.5509 5.26305 15.5609C6.09321 15.5909 6.87335 15.9109 7.47347 16.4911C8.6937 17.6913 8.76371 19.6717 7.6435 20.9919C6.0832 22.8523 2.08245 23.4324 1.63237 23.4924C1.59236 23.4924 1.54235 23.4924 1.50234 23.4924L1.49234 23.5024ZM5.16303 17.5613C4.84297 17.5613 4.53291 17.6713 4.29287 17.8813C3.60274 18.4614 3.07264 19.9317 2.75258 21.242C4.06282 20.9219 5.5331 20.3918 6.11321 19.7017C6.55329 19.1716 6.54329 18.3814 6.0832 17.9213C5.85316 17.7013 5.5431 17.5713 5.20304 17.5613C5.19304 17.5613 5.17303 17.5613 5.16303 17.5613ZM11.7243 21.8821C11.4942 21.8821 11.2642 21.8021 11.0841 21.652C10.8541 21.462 10.7241 21.1819 10.7241 20.8819V15.9109L8.08358 13.2705H3.11264C2.81259 13.2705 2.53254 13.1404 2.3425 12.9104C2.15246 12.6803 2.07245 12.3803 2.12246 12.0902C2.19247 11.7102 2.84259 8.36953 4.70294 7.12929C6.33325 6.04909 8.96375 6.49918 10.244 6.80923C11.5442 4.96889 13.2546 3.4286 15.2349 2.33839C17.4553 1.11816 19.9858 0.518051 22.4963 0.498047C23.0464 0.498047 23.4865 0.948132 23.4865 1.49824C23.4865 5.0389 22.3763 9.97983 17.1753 13.7605C17.4853 15.0408 17.9354 17.6613 16.8552 19.2816C15.615 21.1419 12.2744 21.7921 11.8943 21.8621C11.8343 21.8721 11.7743 21.8821 11.7143 21.8821H11.7243ZM12.7245 16.181V19.6016C13.7146 19.2916 14.7948 18.7915 15.2049 18.1814C15.675 17.4812 15.605 16.091 15.385 14.9008C14.5248 15.3808 13.6346 15.8109 12.7245 16.181ZM9.66388 12.0302L11.9643 14.3307C13.1845 13.8306 14.3648 13.2204 15.485 12.5103C19.9358 9.51974 21.2361 5.60901 21.4561 2.53843C19.6157 2.67846 17.8254 3.20856 16.2051 4.09872C14.2847 5.14892 12.6544 6.68921 11.4942 8.54956C10.7841 9.65977 10.174 10.82 9.66388 12.0302ZM4.39289 11.2701H7.81353C8.1936 10.3599 8.63368 9.46974 9.11377 8.60957C7.92355 8.38953 6.51329 8.31952 5.81315 8.78961C5.19304 9.19968 4.70294 10.3099 4.39289 11.2701Z\" fill=\"#673DE6\"\/>\n                <\/svg>\n                <p class=\"protip__title\">\n                    Consejo profesional                <\/p>\n            <\/div>\n            <p class=\"protip__content\">Utiliza un plugin para a&ntilde;adir c&oacute;digo PHP en las entradas o p&aacute;ginas de WordPress directamente a trav&eacute;s del panel de administraci&oacute;n. No tienes que crear archivos de plantilla ni utilizar un editor de texto independiente, lo que mejora el flujo de trabajo y minimiza los errores.<\/p>\n                    <\/div>\n        \n\n\n\n<\/p><h2 class=\"wp-block-heading\" id=\"h-como-mostrar-tipos-de-entrada-personalizados-en-la-pagina-principal\">C&oacute;mo mostrar tipos de entrada personalizados en la p&aacute;gina principal<\/h2><p>Los tipos de entrada personalizados de WordPress no se muestran en la portada por defecto. Para habilitarlos, escribe una nueva funci&oacute;n que llame al m&eacute;todo set del objeto <a href=\"\/es\/tutoriales\/wp_query-wordpress\/\">WP_Query de WordPress<\/a>.<\/p><p>Aqu&iacute; un ejemplo:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\/\/ Pin our custom function to the pre_get_posts action hook\nadd_action( 'pre_get_posts', 'add_article_to_frontpage' );\n\/\/ Alter the main query\nfunction add_article_to_frontpage( $query ) {\n if ( is_home() &amp;&amp; $query-&gt;is_main_query() ) {\n        $query-&gt;set( 'post_type', array( 'post', 'article' ) );\n    }\n    return $query;\n}<\/pre><p>En esta funci&oacute;n, <strong>$query-&gt;set() <\/strong>toma dos par&aacute;metros: la propiedad modificada y una matriz que define su valor. En nuestro caso, la propiedad modificada es <strong>post_type<\/strong>, mientras que los valores de la matriz son <strong>post <\/strong>y <strong>article<\/strong>.<\/p><p>El array incluye &ldquo;<strong>post<\/strong>&rdquo; para mostrar el tipo de post por defecto en la portada de tu web. Si lo eliminas, s&oacute;lo se mostrar&aacute;n las entradas personalizadas.<\/p><p>El segundo par&aacute;metro es &ldquo;<strong>article<\/strong>&rdquo;, que muestra las entradas normales y todas las entradas de art&iacute;culos personalizados en la portada.<\/p><p>Para activar el c&oacute;digo, p&eacute;galo en el archivo <strong>functions.php <\/strong>de tu tema o en el del plugin personalizado. Te mostraremos c&oacute;mo pegarlo en el plugin:<\/p><ol class=\"wp-block-list\">\n<li>Accede a los archivos de tu sitio de WordPress y ve a la carpeta de tu plugin personalizado. La nuestra est&aacute; en <strong>\/public_html\/wp-content\/plugins\/custom-post-type<\/strong>.<\/li>\n\n\n\n<li>Abre el archivo <strong>.php<\/strong>. A continuaci&oacute;n, copia y pega el c&oacute;digo de la parte inferior.<\/li>\n<\/ol><figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1024\" height=\"551\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2024\/05\/image-132.png\/public\" alt=\"Archivo custom-post-type.php en el Administrador de archivos de Hostinger\" class=\"wp-image-40102\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2024\/05\/image-132.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2024\/05\/image-132.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2024\/05\/image-132.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2024\/05\/image-132.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><ol class=\"wp-block-list\" start=\"3\">\n<li>Pulsa el <strong>icono del disco <\/strong>en la parte superior derecha para guardar los cambios.<\/li>\n<\/ol><p>Los tipos de entrada predeterminados y personalizados deber&iacute;an estar disponibles en la portada de tu sitio web en WordPress.<\/p><h2 class=\"wp-block-heading\" id=\"h-como-anadir-y-mostrar-un-campo-personalizado-de-wordpress\">C&oacute;mo a&ntilde;adir y mostrar un campo personalizado de WordPress<\/h2><p>Despu&eacute;s de crear un nuevo custom post type, puede que necesites a&ntilde;adir un campo personalizado para dar m&aacute;s detalles a tu contenido.<\/p><p>Para esta tarea, puedes utilizar el campo personalizado integrado de WordPress o un plugin. Como cada m&eacute;todo tiene sus pros y sus contras, te explicaremos ambos para ayudarte a decidir cu&aacute;l te conviene m&aacute;s.<\/p><h3 class=\"wp-block-heading\" id=\"h-usar-el-campo-personalizado-predeterminado-de-wordpress\">Usar el campo personalizado predeterminado de WordPress<\/h3><p>WordPress nos proporciona una herramienta integrada para a&ntilde;adir un campo personalizado. Como est&aacute; oculto por defecto, act&iacute;valo yendo al <strong>Editor de entradas <\/strong>&rarr; <strong>Opci&oacute;n de pantalla<\/strong>.<\/p><p>Una vez activado, ver&aacute;s la secci&oacute;n de campos personalizados en la parte inferior de la pantalla de edici&oacute;n de WordPress. Introduce el nombre y el valor, y haz clic en el bot&oacute;n <strong>A&ntilde;adir campo personalizado<\/strong>.<\/p><p>Sin embargo, los campos personalizados no se mostrar&aacute;n en el front-end de tu p&aacute;gina por defecto. Para activarlos, inserta <strong>la <\/strong>funci&oacute;n <strong>the_meta() <\/strong>o <strong>echo get_post_meta() <\/strong>en el archivo de tu tema activo.<\/p><p>Utiliza <strong>the_meta() <\/strong>para mostrar todos los campos personalizados de una entrada. Para mostrar un campo personalizado concreto, utiliza <strong>echo get_post_meta( $post-&gt;ID, &lsquo;clave&rsquo;, TRUE)<\/strong>. Sustituye el valor de la clave por el nombre de tu campo personalizado.<\/p><p>Como hay dos tipos de post, puedes editar <strong>single.php <\/strong>o <strong>single-article.php<\/strong>. Depende de d&oacute;nde quieras mostrar el campo personalizado.<\/p><p>Supongamos que quieres a&ntilde;adir un campo personalizado <strong>Author <\/strong>para las entradas de tipo art&iacute;culo personalizado. En ese caso, introduce uno de los c&oacute;digos de funci&oacute;n en el archivo <strong>single-article.php<\/strong>. Estos son los pasos:<\/p><ol class=\"wp-block-list\">\n<li>Desde tu panel de control de WordPress, dir&iacute;gete a <strong>Apariencia <\/strong>&rarr; <strong>Editor de temas<\/strong>.<\/li>\n<\/ol><ol class=\"wp-block-list\" start=\"2\">\n<li>En el men&uacute; <strong>Archivos Tem&aacute;ticos<\/strong>, situado a la derecha de tu pantalla, selecciona <strong>singe-article.php<\/strong>.<\/li>\n<\/ol><ol class=\"wp-block-list\" start=\"3\">\n<li>Localiza el <a href=\"https:\/\/codex.wordpress.org\/the_loop\" target=\"_blank\" rel=\"noopener\">Bucle de WordPress<\/a> y encuentra esta l&iacute;nea:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">get_template_part( 'template-parts\/post\/content', get_post_format() );<\/pre><ol class=\"wp-block-list\" start=\"4\">\n<li>Pega uno de los c&oacute;digos de funci&oacute;n bajo la l&iacute;nea.<\/li>\n\n\n\n<li>Haz clic en <strong>Actualizar archivo<\/strong>.<\/li>\n<\/ol><p>Tu sitio web de WordPress mostrar&aacute; ahora el campo personalizado <strong>Author <\/strong>debajo de la entrada.<\/p><h3 class=\"wp-block-heading\" id=\"h-limitar-los-campos-personalizados-a-un-tipo-de-entrada-especifico-mediante-un-plugin\">Limitar los campos personalizados a un tipo de entrada espec&iacute;fico mediante un plugin<\/h3><p>Lamentablemente, no puedes utilizar la herramienta integrada de WordPress para a&ntilde;adir un campo personalizado para un tipo de entrada espec&iacute;fico. Esta herramienta predeterminada a&ntilde;ade autom&aacute;ticamente un nuevo campo personalizado para todos los tipos de entrada.<\/p><p>En su lugar, utiliza el plugin <strong>Advanced Custom Fields<\/strong>. Este limita ciertos campos personalizados, haci&eacute;ndolos seleccionables s&oacute;lo en un tipo de entrada elegido.<\/p><p>\n\n\n\n<div class=\"announcement-block announcement-block--important\">\n            <span class=\"announcement-block__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n                          d=\"M12 22.5C17.799 22.5 22.5 17.799 22.5 12C22.5 6.20101 17.799 1.5 12 1.5C6.20101 1.5 1.5 6.20101 1.5 12C1.5 17.799 6.20101 22.5 12 22.5ZM13.637 7.65198C13.637 6.74791 12.9041 6.01501 12 6.01501C11.0959 6.01501 10.363 6.74791 10.363 7.65198C10.5335 9.53749 10.875 13.383 10.875 13.383C10.875 14.0043 11.3787 14.508 12 14.508C12.6213 14.508 13.125 14.0043 13.125 13.383V13.38L13.637 7.65198ZM11.9927 15.714C11.3714 15.714 10.8677 16.2177 10.8677 16.839C10.8677 17.4603 11.3714 17.964 11.9927 17.964H12.0073C12.6286 17.964 13.1323 17.4603 13.1323 16.839C13.1323 16.2177 12.6286 15.714 12.0073 15.714H11.9927Z\"\n                          fill=\"#FEA419\"\/>\n                <\/svg>\n                Important\n            <\/span>\n            <p class=\"announcement-block__content\">\n                <strong>&iexcl;Importante!<\/strong> Una vez activado este plugin, ya no ver&aacute;s el campo personalizado predeterminado de WordPress en el editor de entradas.\n            <\/p><\/div>\n\n\n\n<\/p><p>Despu&eacute;s de activar el plugin, sigue estos pasos para crear y habilitar un campo personalizado para un tipo de entrada espec&iacute;fico:<\/p><ol class=\"wp-block-list\">\n<li>Ve a tu barra lateral de WordPress, haz clic en <strong>Campos personalizados <\/strong>&rarr; <strong>A&ntilde;adir nuevo<\/strong>.<\/li>\n<\/ol><ol class=\"wp-block-list\" start=\"2\">\n<li>Introduce el nombre del <strong>Nuevo Grupo de Campos<\/strong>.<\/li>\n\n\n\n<li>Rellena los siguientes datos para tu nuevo campo personalizado:<\/li>\n<\/ol><ul class=\"wp-block-list\">\n<li><strong>Etiqueta de campo:<\/strong> el nombre de tu campo personalizado que se mostrar&aacute; en la p&aacute;gina de edici&oacute;n.<\/li>\n\n\n\n<li><strong>Nombre del campo:<\/strong> el ID de tu campo personalizado que se utilizar&aacute; para mostrarlo en tu tema.<\/li>\n\n\n\n<li><strong>Tipo de campo<\/strong>: elige entre texto, casilla de verificaci&oacute;n, URL, etc., en funci&oacute;n de tus necesidades.<\/li>\n<\/ul><ol class=\"wp-block-list\" start=\"4\">\n<li>Cuando hayas terminado, pulsa <strong>Cerrar campo<\/strong>.<\/li>\n\n\n\n<li>Despl&aacute;zate hasta la secci&oacute;n <strong>Configuraci&oacute;n <\/strong>y selecciona la pesta&ntilde;a <strong>Reglas de localizaci&oacute;n.<\/strong><\/li>\n\n\n\n<li>Rellena las columnas <strong>Mostrar este campo si <\/strong>para definir la condici&oacute;n de visibilidad del campo personalizado. Por ejemplo, para que sea seleccionable en un tipo de entrada <strong>Art&iacute;culo personalizado<\/strong>, elige <strong>Tipo de entrada <\/strong>&rarr; <strong>es igual a <\/strong>&rarr; <strong>Art&iacute;culo personalizado<\/strong>.<\/li>\n<\/ol><ol class=\"wp-block-list\" start=\"7\">\n<li>Pulsa el bot&oacute;n <strong>Guardar cambios.<\/strong><\/li>\n<\/ol><p>Puesto que creas este campo a trav&eacute;s de un plugin, debes utilizar sus funciones para mostrar el campo personalizado. Los pasos para insertar la funci&oacute;n son similares a los de a&ntilde;adir un campo personalizado por defecto, pero introduce la<strong> <\/strong>funci&oacute;n <strong>the_post( &lsquo;key&rsquo; ); <\/strong>en su lugar.<\/p><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"\/es\/hosting-wordpress\"><img decoding=\"async\" width=\"1024\" height=\"300\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2024\/06\/ES-New-WP_in-text-banner.png\/public\" alt=\"\" class=\"wp-image-40615\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2024\/06\/ES-New-WP_in-text-banner.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2024\/06\/ES-New-WP_in-text-banner.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2024\/06\/ES-New-WP_in-text-banner.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2024\/06\/ES-New-WP_in-text-banner.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div><h2 class=\"wp-block-heading\" id=\"h-conclusion\">Conclusi&oacute;n<\/h2><p>Los custom post types en WordPress permiten a los usuarios organizar el contenido de su sitio web en diferentes categor&iacute;as. Sin embargo, los tipos de entrada predeterminados pueden no ser suficientes para un sitio web grande con contenido diverso.<\/p><p>En ese caso, puedes crear un tipo de entrada personalizado en WordPress creando plugins espec&iacute;ficos para el sitio. Aqu&iacute; tienes un resumen de los pasos:<\/p><ol class=\"wp-block-list\">\n<li>Escribe el c&oacute;digo del plugin en un editor de texto y gu&aacute;rdalo como <strong>.php<\/strong>.<\/li>\n\n\n\n<li>Crea una carpeta de tipos de entrada personalizados en el directorio de plugins de tu sitio.<\/li>\n\n\n\n<li>Pega el archivo en la nueva carpeta.<\/li>\n\n\n\n<li>Ve a tu <strong>Panel de administraci&oacute;n de WordPress <\/strong>&rarr; <strong>Plugins <\/strong>&rarr; <strong>Plugins instalados<\/strong><\/li>\n\n\n\n<li>Busca el plugin custom post type y haz clic en <strong>Activar<\/strong>.<\/li>\n<\/ol><p>Tu tipo de entrada personalizado tambi&eacute;n tiene muchas opciones de personalizaci&oacute;n. Por ejemplo, puedes personalizar la pantalla de edici&oacute;n, a&ntilde;adir meta boxes, editar la visibilidad del tipo de entrada y activar las funciones integradas de WordPress.<\/p><p>Esta amplia personalizaci&oacute;n te permite crear un tipo de entrada que se adapte espec&iacute;ficamente a tu contenido, ayud&aacute;ndote a organizar tu sitio web de WordPress de forma m&aacute;s r&aacute;pida y eficaz.<\/p><p>\n\n\n\n        <div class=\"protip\">\n            <div class=\"protip__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path d=\"M1.49234 23.5024C1.23229 23.5024 0.972242 23.4024 0.782206 23.2123C0.562165 22.9923 0.452144 22.6822 0.502153 22.3722C0.562165 21.9221 1.14227 17.9113 3.00262 16.351C3.63274 15.8209 4.43289 15.5509 5.26305 15.5609C6.09321 15.5909 6.87335 15.9109 7.47347 16.4911C8.6937 17.6913 8.76371 19.6717 7.6435 20.9919C6.0832 22.8523 2.08245 23.4324 1.63237 23.4924C1.59236 23.4924 1.54235 23.4924 1.50234 23.4924L1.49234 23.5024ZM5.16303 17.5613C4.84297 17.5613 4.53291 17.6713 4.29287 17.8813C3.60274 18.4614 3.07264 19.9317 2.75258 21.242C4.06282 20.9219 5.5331 20.3918 6.11321 19.7017C6.55329 19.1716 6.54329 18.3814 6.0832 17.9213C5.85316 17.7013 5.5431 17.5713 5.20304 17.5613C5.19304 17.5613 5.17303 17.5613 5.16303 17.5613ZM11.7243 21.8821C11.4942 21.8821 11.2642 21.8021 11.0841 21.652C10.8541 21.462 10.7241 21.1819 10.7241 20.8819V15.9109L8.08358 13.2705H3.11264C2.81259 13.2705 2.53254 13.1404 2.3425 12.9104C2.15246 12.6803 2.07245 12.3803 2.12246 12.0902C2.19247 11.7102 2.84259 8.36953 4.70294 7.12929C6.33325 6.04909 8.96375 6.49918 10.244 6.80923C11.5442 4.96889 13.2546 3.4286 15.2349 2.33839C17.4553 1.11816 19.9858 0.518051 22.4963 0.498047C23.0464 0.498047 23.4865 0.948132 23.4865 1.49824C23.4865 5.0389 22.3763 9.97983 17.1753 13.7605C17.4853 15.0408 17.9354 17.6613 16.8552 19.2816C15.615 21.1419 12.2744 21.7921 11.8943 21.8621C11.8343 21.8721 11.7743 21.8821 11.7143 21.8821H11.7243ZM12.7245 16.181V19.6016C13.7146 19.2916 14.7948 18.7915 15.2049 18.1814C15.675 17.4812 15.605 16.091 15.385 14.9008C14.5248 15.3808 13.6346 15.8109 12.7245 16.181ZM9.66388 12.0302L11.9643 14.3307C13.1845 13.8306 14.3648 13.2204 15.485 12.5103C19.9358 9.51974 21.2361 5.60901 21.4561 2.53843C19.6157 2.67846 17.8254 3.20856 16.2051 4.09872C14.2847 5.14892 12.6544 6.68921 11.4942 8.54956C10.7841 9.65977 10.174 10.82 9.66388 12.0302ZM4.39289 11.2701H7.81353C8.1936 10.3599 8.63368 9.46974 9.11377 8.60957C7.92355 8.38953 6.51329 8.31952 5.81315 8.78961C5.19304 9.19968 4.70294 10.3099 4.39289 11.2701Z\" fill=\"#673DE6\"\/>\n                <\/svg>\n                <p class=\"protip__title\">\n                    Aprende otras t&eacute;cnicas avanzadas de WordPress                <\/p>\n            <\/div>\n            <p class=\"protip__content\"><a href=\"\/es\/tutoriales\/anadir-css-personalizado-wordpress\/\">C&oacute;mo a&ntilde;adir CSS personalizado en WordPress<\/a><\/p><p><a href=\"\/es\/tutoriales\/crear-widgets-wordpress-personalizados\/\">C&oacute;mo crear widgets personalizados en WordPress<\/a><\/p><p><a href=\"\/es\/tutoriales\/como-usar-xampp-wordpress\/\">C&oacute;mo usar XAMPP para configurar un sitio local de WordPress<\/a><\/p><p><a href=\"\/es\/tutoriales\/duplicar-pagina-wordpress\/\">C&oacute;mo duplicar p&aacute;ginas en WordPress<\/a><\/p><p><a href=\"\/es\/tutoriales\/que-son-hooks-wordpress\/\">Gu&iacute;a de Hooks de WordPress<\/a><\/p>\n                    <\/div>\n        \n\n\n\n<\/p><h2 class=\"wp-block-heading\" id=\"h-custom-post-type-preguntas-frecuentes\">Custom post type &ndash; Preguntas frecuentes<\/h2><p>Esta secci&oacute;n responder&aacute; las preguntas comunes sobre el tipo de entrada personalizada de WordPress. No obstante, si tienes m&aacute;s preguntas, d&eacute;jalas en la acci&oacute;n de comentarios a continuaci&oacute;n.<\/p><div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list \">\n<div id=\"faq-question-69447692a2f6c\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">&iquest;Cu&aacute;l es la diferencia entre un Post y un Custom Post Type?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>En WordPress, una <strong>entrada <\/strong>puede referirse a una &uacute;nica pieza de contenido. Tambi&eacute;n puede referirse a un tipo de entrada similar a p&aacute;ginas, archivos adjuntos, revisiones y otros.<\/p>\n<p>Por su parte, un <strong>custom post type <\/strong>es una categor&iacute;a de contenido que crean los propios usuarios.&nbsp;<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-69447692a2f6f\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">&iquest;Qu&eacute; puedes cambiar en el Custom Post Type de WordPress?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Puedes cambiar su ubicaci&oacute;n en el &aacute;rea de administraci&oacute;n, la capacidad de b&uacute;squeda y funciones adicionales como extractos, formatos de post y trackbacks.<\/p>\n<p>Adem&aacute;s, WordPress tambi&eacute;n te permite modificar la pantalla de edici&oacute;n de entradas y a&ntilde;adir campos personalizados para incluir m&aacute;s informaci&oacute;n en tu contenido. Por ejemplo, puedes mostrar el autor de la entrada o el tiempo de lectura.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-69447692a2f70\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">&iquest;Es posible obtener un ID de tipo de entrada personalizado?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>S&iacute;. Para ver el ID de una entrada de WordPress, pasa el rat&oacute;n por encima del t&iacute;tulo del contenido y ver&aacute;s la UR en la esquina inferior izquierda. Es el n&uacute;mero que hay entre los par&aacute;metros &ldquo;<strong>post=<\/strong>&rdquo; y &ldquo;&amp;&rdquo;.<\/p>\n<p>Tambi&eacute;n puedes obtener un ID &uacute;nico de tipo de entrada personalizada por su t&iacute;tulo utilizando el comando <strong>get_page_by_title ()<\/strong>.&nbsp;<\/p>\n<p>Alternativamente, recup&eacute;ralo utilizando slug el comando <strong>get_page_by_path ()<\/strong>.<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>WordPress tiene varios tipos de entradas para ayudarte a organizar el contenido de tu sitio web. Con ellos puedes crear f&aacute;cilmente un blog cronol&oacute;gico o mostrar p&aacute;ginas est&aacute;ticas. Sin embargo, los tipos de entrada incorporados pueden no ser suficientes para sitios web grandes con contenido diverso. En ese caso, debes crear tu propio tipo de [&#8230;]<\/p>\n<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"\/es\/tutoriales\/custom-post-types-wordpress\/\">Read More&#8230;<\/a><\/p>\n","protected":false},"author":85,"featured_media":31424,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"rank_math_title":"C\u00f3mo crear un Custom Post Type en WordPress","rank_math_description":"Aprende de forma sencilla como crear un custom post type o publicaciones personalizadas en WordPress utilizando un plugin creado desde cero.","rank_math_focus_keyword":"custom post type wordpress","footnotes":""},"categories":[4747,14348],"tags":[8076],"class_list":["post-6488","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wordpress","category-experto","tag-custom-post-types"],"hreflangs":[{"locale":"en-US","link":"https:\/\/www.hostinger.com\/tutorials\/wordpress-custom-post-types\/","default":1},{"locale":"pt-BR","link":"https:\/\/www.hostinger.com\/br\/tutoriais\/como-criar-custom-post-types-wordpress\/","default":0},{"locale":"fr-FR","link":"https:\/\/www.hostinger.com\/fr\/tutoriels\/comment-creer-custom-post-type-wordpress\/","default":0},{"locale":"es-ES","link":"https:\/\/www.hostinger.com\/es\/tutoriales\/custom-post-types-wordpress\/","default":0},{"locale":"id-ID","link":"https:\/\/www.hostinger.com\/id\/tutorial\/cara-membuat-custom-post-types\/","default":0},{"locale":"en-PH","link":"https:\/\/www.hostinger.com\/ph\/tutorials\/wordpress-custom-post-types\/","default":0},{"locale":"en-MY","link":"https:\/\/www.hostinger.com\/my\/tutorials\/wordpress-custom-post-types\/","default":0},{"locale":"en-GB","link":"https:\/\/www.hostinger.com\/uk\/tutorials\/wordpress-custom-post-types\/","default":0},{"locale":"en-IN","link":"https:\/\/www.hostinger.com\/in\/tutorials\/wordpress-custom-post-types\/","default":0},{"locale":"en-CA","link":"https:\/\/www.hostinger.com\/ca\/tutorials\/wordpress-custom-post-types\/","default":0},{"locale":"en-AU","link":"https:\/\/www.hostinger.com\/au\/tutorials\/wordpress-custom-post-types\/","default":0},{"locale":"en-NG","link":"https:\/\/www.hostinger.com\/ng\/tutorials\/wordpress-custom-post-types\/","default":0},{"locale":"es-AR","link":"https:\/\/www.hostinger.com\/ar\/tutoriales\/custom-post-types-wordpress\/","default":0},{"locale":"es-MX","link":"https:\/\/www.hostinger.com\/mx\/tutoriales\/custom-post-types-wordpress\/","default":0},{"locale":"es-CO","link":"https:\/\/www.hostinger.com\/co\/tutoriales\/custom-post-types-wordpress\/","default":0},{"locale":"pt-PT","link":"https:\/\/www.hostinger.com\/pt\/tutoriais\/como-criar-custom-post-types-wordpress\/","default":0}],"acf":[],"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/es\/tutoriales\/wp-json\/wp\/v2\/posts\/6488","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hostinger.com\/es\/tutoriales\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hostinger.com\/es\/tutoriales\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/es\/tutoriales\/wp-json\/wp\/v2\/users\/85"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/es\/tutoriales\/wp-json\/wp\/v2\/comments?post=6488"}],"version-history":[{"count":25,"href":"https:\/\/www.hostinger.com\/es\/tutoriales\/wp-json\/wp\/v2\/posts\/6488\/revisions"}],"predecessor-version":[{"id":50014,"href":"https:\/\/www.hostinger.com\/es\/tutoriales\/wp-json\/wp\/v2\/posts\/6488\/revisions\/50014"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/es\/tutoriales\/wp-json\/wp\/v2\/media\/31424"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/es\/tutoriales\/wp-json\/wp\/v2\/media?parent=6488"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/es\/tutoriales\/wp-json\/wp\/v2\/categories?post=6488"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/es\/tutoriales\/wp-json\/wp\/v2\/tags?post=6488"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}