{"id":79699,"date":"2025-07-17T16:09:02","date_gmt":"2025-07-17T14:09:02","guid":{"rendered":"https:\/\/kinqsta.com\/es\/?p=79699&#038;preview=true&#038;preview_id=79699"},"modified":"2025-07-22T11:28:24","modified_gmt":"2025-07-22T09:28:24","slug":"personalizar-bloques-en-tema-hijo","status":"publish","type":"post","link":"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/","title":{"rendered":"Estilos personalizados para temas de bloques de WordPress utilizando un tema hijo"},"content":{"rendered":"<p>Los <a href=\"https:\/\/kinqsta.com\/es\/blog\/temas-de-bloques-wordpress\/\">temas de bloques<\/a> y <code><a href=\"https:\/\/kinqsta.com\/es\/blog\/theme-json\/\">theme.json<\/a><\/code> te dan mucha flexibilidad, lo que puede hacer que parezca que los <a href=\"https:\/\/kinqsta.com\/es\/blog\/temas-child-wordpress\/\">temas hijos<\/a> han quedado obsoletos. Pero siguen siendo esenciales en muchos casos.<\/p>\n<p>Usar un tema hijo sigue siendo la mejor opci\u00f3n si deseas tener un control real sobre el dise\u00f1o de tu sitio sin tocar los archivos principales del tema padre.<\/p>\n<p>En este art\u00edculo, utilizaremos el <a href=\"https:\/\/kinqsta.com\/es\/blog\/tema-twenty-twenty-five\/\">tema Twenty Twenty-Five<\/a> como base y te guiaremos en la creaci\u00f3n de un tema hijo de bloques con su propio <code>style.css<\/code> y <code><a href=\"https:\/\/kinqsta.com\/es\/blog\/functions-php-wordpress\/\">functions.php<\/a><\/code>. Aprender\u00e1s a anular estilos de forma segura, a definir estilos de bloque personalizados e incluso a configurar tus propias variaciones de estilo. No se trata s\u00f3lo de un truco de estilo \u2014 sino de un paso seguro hacia la creaci\u00f3n de tu propio tema de bloques completo en el futuro.<\/p>\n<p>Aunque este ejercicio puede parecer sencillo, exploraremos algunos puntos m\u00e1s delicados que pueden resultar complicados. Vamos a empezar creando un tema hijo personalizado y, a continuaci\u00f3n, implementaremos una variaci\u00f3n de estilo personalizada.<\/p>\n<div><\/div><kinsta-auto-toc heading=\"Table of Contents\" exclude=\"last\" list-style=\"arrow\" selector=\"h2\" count-number=\"-1\"><\/kinsta-auto-toc>\n<h2>Registrar un tema hijo de bloques<\/h2>\n<p>Registrar un tema hijo de bloques es mucho m\u00e1s sencillo que registrar <a href=\"https:\/\/kinqsta.com\/es\/blog\/crear-tema-clasico-de-wordpress\/\">uno cl\u00e1sico<\/a>.<\/p>\n<p>T\u00e9cnicamente, no es necesario registrarlo. El registro se produce autom\u00e1ticamente cuando una carpeta de tema hijo con el nombre adecuado contiene un archivo <code>theme.json<\/code> y un archivo <code>style.css<\/code>.<\/p>\n<p>Entonces, \u00bfpor qu\u00e9 sigue siendo necesario el archivo <code>style.css<\/code>?<\/p>\n<p>Como siempre, incluye un encabezado obligatorio (que se muestra a continuaci\u00f3n) que contiene <a href=\"https:\/\/kinqsta.com\/es\/blog\/meta-descripciones-wordpress\/\">metadatos<\/a> que WordPress utiliza para identificar el tema, incluyendo su nombre y el tema padre al que pertenece. Aunque los estilos y la configuraci\u00f3n se gestionan ahora en <code>theme.json<\/code>, <code>style.css<\/code> sigue desempe\u00f1ando un papel fundamental para que WordPress reconozca tu tema, aunque no contenga CSS propiamente dicho.<\/p>\n<pre><code class=\"language-css\">\/*\nTheme Name: Twenty Twenty-Five Child\nDescription: Child theme for the Twenty Twenty-Five theme\nTemplate: twentytwentyfive\n*\/<\/code><\/pre>\n<p>Un archivo <code>functions.php<\/code> no es necesario a menos que quieras <a href=\"https:\/\/kinqsta.com\/es\/blog\/wp-enqueue-scripts\/\">poner en cola scripts<\/a> o a\u00f1adir funcionalidad basada en PHP. Eso lo haremos m\u00e1s adelante.<\/p>\n<p>Si no est\u00e1s familiarizado con <code>theme.json<\/code> o quieres un repaso r\u00e1pido, consulta nuestra gu\u00eda sobre c\u00f3mo <a href=\"https:\/\/kinqsta.com\/es\/blog\/theme-json-propiedades-pares-clave-valor\/\">Trabajar con propiedades y pares clave-valor en theme.json<\/a>.<\/p>\n<h2>Realizar tres cambios b\u00e1sicos en nuestro tema hijo.<\/h2>\n<p>Empecemos actualizando los colores globales del fondo y del texto, adem\u00e1s de dar estilo al bloque Bot\u00f3n.<\/p>\n<p>En el archivo <code>theme.json<\/code> del tema hijo (que sirve como estilo por defecto), definimos lo siguiente:<\/p>\n<pre><code class=\"language-json\">{\n  \"version\": 3,\n  \"settings\": {\n    \"color\": {\n      \"palette\": [\n        {\n          \"name\": \"Black\",\n          \"slug\": \"black\",\n          \"color\": \"#000000\"\n        },\n        {\n          \"name\": \"Yellow\",\n          \"slug\": \"yellow\",\n          \"color\": \"#FFFF00\"\n        },\n        {\n          \"name\": \"Purple\",\n          \"slug\": \"purple\",\n          \"color\": \"#800080\"\n        },\n        {\n          \"name\": \"White\",\n          \"slug\": \"white\",\n          \"color\": \"#FFFFFF\"\n        }\n      ]\n    }\n  },\n  \"styles\": {\n    \"color\": {\n      \"background\": \"var(--wp--preset--color--black)\",\n      \"text\": \"var(--wp--preset--color--yellow)\"\n    },\n    \"blocks\": {\n      \"core\/button\": {\n        \"color\": {\n          \"background\": \"var(--wp--preset--color--purple)\",\n          \"text\": \"var(--wp--preset--color--white)\"\n        },\n        \"border\": {\n          \"color\": \"var(--wp--preset--color--yellow)\",\n          \"width\": \"2px\",\n          \"style\": \"solid\"\n        }\n      }\n    }\n  }\n}<\/code><\/pre>\n<p>Mientras que los colores de fondo y de texto se aplican a todas las variaciones de estilo, el estilo del bloque Bot\u00f3n s\u00f3lo se aplica a la variaci\u00f3n por <strong>defecto<\/strong>.<\/p>\n<figure style=\"width: 1187px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2025\/06\/child-theme-with-default-style.png\" alt=\"Tema hijo utilizando la variaci\u00f3n de estilo por defecto en el Editor de Sitios.\" width=\"1187\" height=\"731\"><figcaption class=\"wp-caption-text\">Tema hijo utilizando la variaci\u00f3n de estilo por defecto en el Editor de Sitios.<\/figcaption><\/figure>\n<h3>Anular variaciones de estilo<\/h3>\n<p>Para aplicar el mismo estilo de bot\u00f3n en diferentes variaciones, lo mejor es crear un archivo <code>.json<\/code> que coincida con la convenci\u00f3n de nomenclatura de variaciones del tema padre.<\/p>\n<p>Por ejemplo, para anular el borde del bot\u00f3n en la variaci\u00f3n de estilo <em>Evening<\/em>, crea un archivo llamado <code>01-evening.json<\/code> en el directorio ra\u00edz de tu tema hijo (o dentro de una subcarpeta <code>\/styles<\/code>):<\/p>\n<pre><code class=\"language-json\">{\n  \"version\": 3,\n  \"title\": \"Evening\",\n  \"styles\": {\n    \"blocks\": {\n      \"core\/button\": {\n        \"border\": {\n          \"color\": \"var(--wp--preset--color--white)\",\n          \"width\": \"3px\",\n          \"style\": \"dashed\"\n        }\n      }\n    }\n  }\n}<\/code><\/pre>\n<p>Aqu\u00ed hemos utilizado un borde discontinuo m\u00e1s ancho para que el bot\u00f3n destaque. Como se trata de estilos m\u00e1s espec\u00edficos, anulan los generales de <code>theme.json<\/code>.<\/p>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>No es necesario redefinir los colores globales del fondo o del texto, ya que se heredan del tema hijo <code>theme.json<\/code>.<\/p>\n<\/aside>\n\n<figure style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2025\/06\/custom-evening-style-variation.png\" alt=\"Tema hijo con la variaci\u00f3n de estilo personalizada Evening activada.\" width=\"1001\" height=\"471\"><figcaption class=\"wp-caption-text\">Tema hijo con la variaci\u00f3n de estilo personalizada Evening activada.<\/figcaption><\/figure>\n<h3>Crear una variaci\u00f3n de estilo personalizada<\/h3>\n<p>Vamos a dar un paso m\u00e1s creando una variaci\u00f3n de estilo completamente nueva llamada <strong>Kinsta<\/strong>. Esta variaci\u00f3n hereda la configuraci\u00f3n global del archivo <code>theme.json<\/code> del tema hijo y aplica su propia paleta de colores personalizada y el estilo de los botones:<\/p>\n<p>Guarda lo siguiente como <code>\/styles\/kinsta.json<\/code>:<\/p>\n<pre><code class=\"language-json\">{\n  \"version\": 3,\n  \"title\": \"Kinsta\",\n  \"settings\": {\n    \"color\": {\n      \"palette\": [\n        {\n          \"name\": \"Primary\",\n          \"slug\": \"primary\",\n          \"color\": \"#261e1e\"\n        },\n        {\n          \"name\": \"Secondary\",\n          \"slug\": \"secondary\",\n          \"color\": \"#ff2900\"\n        },\n        {\n          \"name\": \"White\",\n          \"slug\": \"white\",\n          \"color\": \"#FFFFFF\"\n        }\n      ]\n    }\n  },\n  \"styles\": {\n    \"color\": {\n      \"background\": \"var(--wp--preset--color--secondary)\",\n      \"text\": \"var(--wp--preset--color--primary)\"\n    },\n    \"blocks\": {\n      \"core\/button\": {\n        \"color\": {\n          \"background\": \"var(--wp--preset--color--primary)\",\n          \"text\": \"var(--wp--preset--color--white)\"\n        },\n        \"border\": {\n          \"color\": \"var(--wp--preset--color--white)\",\n          \"width\": \"4px\",\n          \"style\": \"dotted\"\n        }\n      }\n    }\n  }\n}<\/code><\/pre>\n<p>Esta variaci\u00f3n \u00abKinsta\u00bb nos da un aspecto distinto, construido completamente dentro de la estructura del tema hijo.<\/p>\n<figure style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2025\/06\/new-style-variation.png\" alt=\"Nueva variaci\u00f3n de estilo resaltada en la interfaz del Editor de Sitios.\" width=\"1001\" height=\"471\"><figcaption class=\"wp-caption-text\">Nueva variaci\u00f3n de estilo resaltada en la interfaz del Editor de Sitios.<\/figcaption><\/figure>\n<h2>C\u00f3mo y por qu\u00e9 poner en cola style.css<\/h2>\n<p>En un verdadero tema de bloques como Twenty Twenty-Five, no es necesario poner en cola las hojas de estilo manualmente mediante <a href=\"https:\/\/kinqsta.com\/es\/blog\/que-es-php\/\">PHP<\/a>, ni para el <a href=\"https:\/\/kinqsta.com\/es\/blog\/wordpress-jerarquia-plantillas\/\">tema padre ni para el tema hijo<\/a>. El core de WordPress genera <a href=\"https:\/\/kinqsta.com\/es\/blog\/css-wordpress\/\">CSS<\/a> din\u00e1micamente bas\u00e1ndose en el archivo <code>theme.json<\/code>.<\/p>\n<p>Sin embargo, si quieres escribir estilos personalizados en un archivo <code>style.css<\/code>, tendr\u00e1s que ponerlos en cola manualmente.<\/p>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-important\">\n            <h3>Important<\/h3>\n        <p>No existe un m\u00e9todo \u00fanico para poner en cola los estilos. Depende de c\u00f3mo gestione el tema padre sus propios estilos. En el caso de Twenty Twenty-Five, tanto los estilos padre como los estilos hijo deben ponerse en cola manualmente.<\/p>\n<\/aside>\n\n<pre><code class=\"language-php\">\/\/ Frontend styles\nadd_action('wp_enqueue_scripts', function() {\n    \/\/ Enqueue parent theme stylesheet\n    wp_enqueue_style(\n        'parent-style',\n        get_template_directory_uri() . '\/style.css'\n    );\n\n    \/\/ Enqueue child theme stylesheet\n    wp_enqueue_style(\n        'child-style',\n        get_stylesheet_uri(),\n        array('parent-style')\n    );\n});<\/code><\/pre>\n<p>Este c\u00f3digo garantiza que tanto el archivo <code>style.css<\/code> padre como el hijo se carguen en el frontend.<\/p>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>Estos cambios s\u00f3lo se aplican al frontend. Los estilos del editor siguen siendo controlados por <code>theme.json<\/code>. El estilo de la interfaz del editor est\u00e1 fuera del alcance de este art\u00edculo.<\/p>\n<\/aside>\n\n<p>Para confirmar que tus estilos se est\u00e1n poniendo en cola correctamente, prueba a a\u00f1adir el siguiente CSS al archivo <code>style.css<\/code> de tu tema hijo:<\/p>\n<pre><code class=\"language-css\">body {\n  color: #ffff00;\n  background: #0000ff;\n}<\/code><\/pre>\n<p>Esto da a todas las variaciones de estilo un fondo azul y un color de texto amarillo, s\u00f3lo en el frontend.<\/p>\n<h3>Un caso sencillo de uso de styles.css<\/h3>\n<p>Puede que te est\u00e9s preguntando: <em>\u00bfPor qu\u00e9 utilizar CSS? \u00bfNo se supone que <\/em><code><em>theme.json<\/em><\/code><em>\u00a0se encarga de todo?<\/em><\/p>\n<p>Pues no.<\/p>\n<p>Por ejemplo, <code>theme.json<\/code> no admite pseudoclases como <code>:hover<\/code>. Para dar estilo a un efecto hover en todos los botones, puedes utilizar este CSS:<\/p>\n<pre><code class=\"language-css\">.wp-block-button a:hover {\n  background: #ffffff;\n  color: #0000ff;\n}<\/code><\/pre>\n<p>Esto se aplica a todos los bloques de botones en todas las variaciones del frontend.<\/p>\n<p>Supongamos que quieres limitar este efecto hover a una variaci\u00f3n o bloque espec\u00edfico. En ese caso, tendr\u00e1s que utilizar m\u00e9todos m\u00e1s avanzados, como clases condicionales de cuerpo, filtros de bloque o CSS espec\u00edfico de bloque.<\/p>\n<h2>A\u00f1adir una variaci\u00f3n de estilo de bloque<\/h2>\n<p>Ahora vamos a examinar c\u00f3mo a\u00f1adir una nueva variaci\u00f3n de estilo al bloque Bot\u00f3n utilizando PHP y CSS.<\/p>\n<p>Si est\u00e1s pensando en a\u00f1adir un array <code>variations<\/code> a <code>theme.json<\/code>, no funcionar\u00e1 para este caso de uso. Mientras que <code>theme.json<\/code> gestiona el estilo global y a nivel de bloque, las variaciones de estilo de bloque \u2014 como los estilos alternativos de los botones \u2014 deben registrarse de forma diferente.<\/p>\n<p>Creamos una nueva variaci\u00f3n de estilo llamada <strong>Alternative Outline<\/strong>, que aparece junto a los estilos de Relleno (Fill) y Contorno (Outline) predeterminados en la interfaz de usuario del editor y se muestra correctamente en el frontend.<\/p>\n<h3>Registra el estilo en PHP<\/h3>\n<p>A\u00f1ade el siguiente c\u00f3digo al archivo <code>functions.php<\/code> de tu tema hijo. Registra el estilo despu\u00e9s de que se cargue el core, pero antes de que se renderice cualquier p\u00e1gina:<\/p>\n<pre><code class=\"language-php\">\/\/ Register \"Alternative Outline\" button style\nadd_action('init', function() {\n    register_block_style(\n        'core\/button',\n        [\n            'name'  =&gt; 'alternative-outline',\n            'label' =&gt; __('Alternative Outline', 'twenty-twenty-five-child'),\n        ]\n    );\n});<\/code><\/pre>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>Estamos utilizando <code>__()<\/code> para la internacionalizaci\u00f3n y el espaciado de nombres con el dominio de texto de nuestro tema hijo.<\/p>\n<\/aside>\n\n<h3>A\u00f1ade estilos personalizados a style.css<\/h3>\n<p>Ahora define los estilos para esta variaci\u00f3n \u2014 incluyendo el estado <code>:hover<\/code> \u2014 en el archivo <code>style.css<\/code> de tu tema hijo:<\/p>\n<pre><code class=\"language-css\">.wp-block-button.is-style-alternative-outline .wp-block-button__link {\n  background-color: transparent;\n  color: var(--wp--preset--color--yellow);\n  border: 2px dotted var(--wp--preset--color--yellow);\n  transition: all 0.7s ease-in-out;\n}\n\n.wp-block-button.is-style-alternative-outline .wp-block-button__link:hover {\n  background-color: var(--wp--preset--color--yellow);\n  color: var(--wp--preset--color--black);\n}<\/code><\/pre>\n<p>Las variables <code>color<\/code> utilizadas aqu\u00ed se definen en tu paleta <code>theme.json<\/code>, lo que garantiza la coherencia en todo el sitio.<\/p>\n<figure style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2025\/06\/new-alternative-outline-button-block.png\" alt=\"Nuevo estilo de bloque del bot\u00f3n Alternative Outline visible en la barra de herramientas y en la barra lateral.\" width=\"1001\" height=\"471\"><figcaption class=\"wp-caption-text\">Nuevo estilo de bloque del bot\u00f3n Alternative Outline visible en la barra de herramientas y en la barra lateral.<\/figcaption><\/figure>\n<h2>Crear variaciones de estilo de bloque con JSON<\/h2>\n<p>A partir de <a href=\"https:\/\/kinqsta.com\/es\/blog\/wordpress-6-6\/\">WordPress 6.6<\/a>, puedes registrar variaciones del estilo de bloque core utilizando JSON, sin necesidad de PHP.<\/p>\n<p>Aqu\u00ed tienes un ejemplo que a\u00f1ade una nueva variaci\u00f3n llamada <strong>Purple Background <\/strong>(Fondo morado) al bloque Grupo. Aparece en la barra lateral del editor con una vista previa con estilo:<\/p>\n<p>Crea un archivo llamado <code>block.json<\/code> dentro de la carpeta <code>\/styles\/purple-background\/<\/code> de tu tema:<\/p>\n<pre><code class=\"language-json\">{\n  \"version\": 3,\n  \"$schema\": \"https:\/\/schemas.wp.org\/trunk\/theme.json\",\n  \"title\": \"Purple Background\",\n  \"slug\": \"section-purple\",\n  \"blockTypes\": [\"core\/group\"],\n  \"styles\": {\n    \"border\": {\n      \"radius\": \"20px\"\n    },\n    \"color\": {\n      \"background\": \"#800080\",\n      \"text\": \"#eeeeee\"\n    },\n    \"spacing\": {\n      \"padding\": {\n        \"top\": \"var(--wp--preset--spacing--50)\",\n        \"right\": \"var(--wp--preset--spacing--50)\",\n        \"bottom\": \"var(--wp--preset--spacing--50)\",\n        \"left\": \"var(--wp--preset--spacing--50)\"\n      }\n    }\n  }\n}<\/code><\/pre>\n<p>La variaci\u00f3n Purple Background aparece en la barra lateral del editor como se muestra en la imagen siguiente:<\/p>\n<figure style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2025\/06\/group-block-custom-style-variation.png\" alt=\"Bloque de grupo utilizando una variaci\u00f3n de estilo personalizada en el Editor de Sitios.\" width=\"1001\" height=\"471\"><figcaption class=\"wp-caption-text\">Bloque de grupo utilizando una variaci\u00f3n de estilo personalizada en el Editor de Sitios.<\/figcaption><\/figure>\n<p>Si trabajas con varias variaciones de estilo, es una buena pr\u00e1ctica colocarlas en una subcarpeta de <code>\/styles<\/code>. En este caso, la ruta del archivo es: <code>\/styles\/purple-background\/block.json<\/code>.<\/p>\n<p>Aqu\u00ed tienes algunas notas finales que debes tener en cuenta sobre el m\u00e9todo JSON:<\/p>\n<ul>\n<li>Este m\u00e9todo no requiere PHP y puede reducir el peso de la p\u00e1gina porque <a href=\"https:\/\/kinqsta.com\/es\/blog\/que-es-wordpress\/\">WordPress<\/a> s\u00f3lo carga el CSS relevante cuando es necesario.<\/li>\n<li>Como estamos trabajando con un tema hijo de Twenty Twenty-Five \u2014 que ya utiliza <code>theme.json<\/code> y estilos din\u00e1micos \u2014 no hay necesidad de poner en cola los estilos manualmente.<\/li>\n<li>Es posible que algunos bloques a\u00fan no admitan todas las opciones de estilo a trav\u00e9s de JSON. Si te preocupa la compatibilidad con versiones anteriores, opcionalmente puedes a\u00f1adir una alternativa PHP utilizando <code>register_block_style()<\/code>.<\/li>\n<\/ul>\n<h2>Resumen<\/h2>\n<p>Los temas de bloques ofrecen una flexibilidad extraordinaria, lo que abre la puerta a innumerables posibilidades de desarrollo. En este art\u00edculo, nuestro objetivo era introducirte en el mundo de los temas hijo para temas de bloques \u2014 y, con suerte, inspirarte para que des vida a tus propias ideas.<\/p>\n<p>Tambi\u00e9n hemos explorado dos enfoques para a\u00f1adir variaciones de estilo <a href=\"https:\/\/kinqsta.com\/es\/blog\/extender-bloques-del-core-de-wp\/\">personalizadas al bloque core<\/a> \u2014 uno utilizando PHP y CSS, y otro utilizando \u00fanicamente JSON.<\/p>\n<p>Como puedes imaginar, cada ejemplo que hemos visto podr\u00eda dar lugar a varias soluciones. WordPress ofrece numerosas opciones y, a menudo, varias formas de resolver el mismo problema.<\/p>\n<p>Por ejemplo, podr\u00edas crear un tema de bloques que utilice <code>theme.json<\/code> para la configuraci\u00f3n pero que dependa totalmente de <code>style.css<\/code> para el estilo, aprovechando las capacidades m\u00e1s amplias de CSS. O puedes poner en cola de forma condicional los estilos para que s\u00f3lo se carguen cuando se utilice una variaci\u00f3n espec\u00edfica.<\/p>\n<p>\u00a1Las posibilidades son infinitas!<\/p>\n<p>En Kinsta, ofrecemos un conjunto completo de herramientas de desarrollo, tanto b\u00e1sicas como avanzadas, para acelerar, limpiar y mejorar tu flujo de trabajo en WordPress. <a href=\"https:\/\/kinqsta.com\/es\/blog\/primer-mes-con-kinsta-gratuito\/\">Prueba Kinsta gratis durante 30 d\u00edas<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Los temas de bloques y theme.json te dan mucha flexibilidad, lo que puede hacer que parezca que los temas hijos han quedado obsoletos. Pero siguen siendo &#8230;<\/p>\n","protected":false},"author":313,"featured_media":79700,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[],"topic":[1345,1355],"class_list":["post-79699","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","topic-desarrollo-wordpress","topic-temas-wordpress"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v24.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Personalizaci\u00f3n de temas de bloques de WordPress con un tema hijo<\/title>\n<meta name=\"description\" content=\"Aprende a personalizar los temas de bloques en WordPress utilizando temas hijos, theme.json, CSS y variaciones de estilo de bloques.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Estilos personalizados para temas de bloques de WordPress utilizando un tema hijo\" \/>\n<meta property=\"og:description\" content=\"Aprende a personalizar los temas de bloques en WordPress utilizando temas hijos, theme.json, CSS y variaciones de estilo de bloques.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/kinsta.es\/\" \/>\n<meta property=\"article:published_time\" content=\"2025-07-17T14:09:02+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-07-22T09:28:24+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinqsta.com\/es\/wp-content\/uploads\/sites\/8\/2025\/07\/custom-block-styling-in-a-child-theme.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1470\" \/>\n\t<meta property=\"og:image:height\" content=\"735\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Bud Kraus\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"Aprende a personalizar los temas de bloques en WordPress utilizando temas hijos, theme.json, CSS y variaciones de estilo de bloques.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinqsta.com\/es\/wp-content\/uploads\/sites\/8\/2025\/07\/custom-block-styling-in-a-child-theme.png\" \/>\n<meta name=\"twitter:creator\" content=\"@Kinsta_ES\" \/>\n<meta name=\"twitter:site\" content=\"@Kinsta_ES\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Bud Kraus\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/\"},\"author\":{\"name\":\"Bud Kraus\",\"@id\":\"https:\/\/kinqsta.com\/es\/#\/schema\/person\/8cce3d6bbd8a2aa46850235d997793ed\"},\"headline\":\"Estilos personalizados para temas de bloques de WordPress utilizando un tema hijo\",\"datePublished\":\"2025-07-17T14:09:02+00:00\",\"dateModified\":\"2025-07-22T09:28:24+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/\"},\"wordCount\":1687,\"publisher\":{\"@id\":\"https:\/\/kinqsta.com\/es\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinqsta.com\/es\/wp-content\/uploads\/sites\/8\/2025\/07\/custom-block-styling-in-a-child-theme.png\",\"inLanguage\":\"es\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/\",\"url\":\"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/\",\"name\":\"Personalizaci\u00f3n de temas de bloques de WordPress con un tema hijo\",\"isPartOf\":{\"@id\":\"https:\/\/kinqsta.com\/es\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinqsta.com\/es\/wp-content\/uploads\/sites\/8\/2025\/07\/custom-block-styling-in-a-child-theme.png\",\"datePublished\":\"2025-07-17T14:09:02+00:00\",\"dateModified\":\"2025-07-22T09:28:24+00:00\",\"description\":\"Aprende a personalizar los temas de bloques en WordPress utilizando temas hijos, theme.json, CSS y variaciones de estilo de bloques.\",\"breadcrumb\":{\"@id\":\"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/#primaryimage\",\"url\":\"https:\/\/kinqsta.com\/es\/wp-content\/uploads\/sites\/8\/2025\/07\/custom-block-styling-in-a-child-theme.png\",\"contentUrl\":\"https:\/\/kinqsta.com\/es\/wp-content\/uploads\/sites\/8\/2025\/07\/custom-block-styling-in-a-child-theme.png\",\"width\":1470,\"height\":735},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinqsta.com\/es\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Temas WordPress\",\"item\":\"https:\/\/kinqsta.com\/es\/secciones\/temas-wordpress\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Estilos personalizados para temas de bloques de WordPress utilizando un tema hijo\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinqsta.com\/es\/#website\",\"url\":\"https:\/\/kinqsta.com\/es\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Soluciones de alojamiento premium, r\u00e1pidas y seguras\",\"publisher\":{\"@id\":\"https:\/\/kinqsta.com\/es\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinqsta.com\/es\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinqsta.com\/es\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinqsta.com\/es\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/kinqsta.com\/es\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinqsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinqsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinqsta.com\/es\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/kinsta.es\/\",\"https:\/\/x.com\/Kinsta_ES\",\"https:\/\/www.instagram.com\/kinstahosting\/\",\"https:\/\/www.linkedin.com\/company\/kinsta\/\",\"https:\/\/www.pinterest.com\/kinstahosting\/\",\"https:\/\/www.youtube.com\/c\/Kinsta\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kinqsta.com\/es\/#\/schema\/person\/8cce3d6bbd8a2aa46850235d997793ed\",\"name\":\"Bud Kraus\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/kinqsta.com\/es\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/4720f5a00a3f527eda2576d524728bc2?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/4720f5a00a3f527eda2576d524728bc2?s=96&d=mm&r=g\",\"caption\":\"Bud Kraus\"},\"description\":\"Bud Kraus has been working with WordPress as an in-class and online instructor, site developer, and content creator since 2009. He has produced instructional videos and written many articles for WordPress businesses.\",\"url\":\"https:\/\/kinqsta.com\/es\/blog\/author\/budkraus\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Personalizaci\u00f3n de temas de bloques de WordPress con un tema hijo","description":"Aprende a personalizar los temas de bloques en WordPress utilizando temas hijos, theme.json, CSS y variaciones de estilo de bloques.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/","og_locale":"es_ES","og_type":"article","og_title":"Estilos personalizados para temas de bloques de WordPress utilizando un tema hijo","og_description":"Aprende a personalizar los temas de bloques en WordPress utilizando temas hijos, theme.json, CSS y variaciones de estilo de bloques.","og_url":"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/kinsta.es\/","article_published_time":"2025-07-17T14:09:02+00:00","article_modified_time":"2025-07-22T09:28:24+00:00","og_image":[{"width":1470,"height":735,"url":"https:\/\/kinqsta.com\/es\/wp-content\/uploads\/sites\/8\/2025\/07\/custom-block-styling-in-a-child-theme.png","type":"image\/png"}],"author":"Bud Kraus","twitter_card":"summary_large_image","twitter_description":"Aprende a personalizar los temas de bloques en WordPress utilizando temas hijos, theme.json, CSS y variaciones de estilo de bloques.","twitter_image":"https:\/\/kinqsta.com\/es\/wp-content\/uploads\/sites\/8\/2025\/07\/custom-block-styling-in-a-child-theme.png","twitter_creator":"@Kinsta_ES","twitter_site":"@Kinsta_ES","twitter_misc":{"Escrito por":"Bud Kraus","Tiempo de lectura":"10 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/#article","isPartOf":{"@id":"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/"},"author":{"name":"Bud Kraus","@id":"https:\/\/kinqsta.com\/es\/#\/schema\/person\/8cce3d6bbd8a2aa46850235d997793ed"},"headline":"Estilos personalizados para temas de bloques de WordPress utilizando un tema hijo","datePublished":"2025-07-17T14:09:02+00:00","dateModified":"2025-07-22T09:28:24+00:00","mainEntityOfPage":{"@id":"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/"},"wordCount":1687,"publisher":{"@id":"https:\/\/kinqsta.com\/es\/#organization"},"image":{"@id":"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/#primaryimage"},"thumbnailUrl":"https:\/\/kinqsta.com\/es\/wp-content\/uploads\/sites\/8\/2025\/07\/custom-block-styling-in-a-child-theme.png","inLanguage":"es"},{"@type":"WebPage","@id":"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/","url":"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/","name":"Personalizaci\u00f3n de temas de bloques de WordPress con un tema hijo","isPartOf":{"@id":"https:\/\/kinqsta.com\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/#primaryimage"},"image":{"@id":"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/#primaryimage"},"thumbnailUrl":"https:\/\/kinqsta.com\/es\/wp-content\/uploads\/sites\/8\/2025\/07\/custom-block-styling-in-a-child-theme.png","datePublished":"2025-07-17T14:09:02+00:00","dateModified":"2025-07-22T09:28:24+00:00","description":"Aprende a personalizar los temas de bloques en WordPress utilizando temas hijos, theme.json, CSS y variaciones de estilo de bloques.","breadcrumb":{"@id":"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/#primaryimage","url":"https:\/\/kinqsta.com\/es\/wp-content\/uploads\/sites\/8\/2025\/07\/custom-block-styling-in-a-child-theme.png","contentUrl":"https:\/\/kinqsta.com\/es\/wp-content\/uploads\/sites\/8\/2025\/07\/custom-block-styling-in-a-child-theme.png","width":1470,"height":735},{"@type":"BreadcrumbList","@id":"https:\/\/kinqsta.com\/es\/blog\/personalizar-bloques-en-tema-hijo\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinqsta.com\/es\/"},{"@type":"ListItem","position":2,"name":"Temas WordPress","item":"https:\/\/kinqsta.com\/es\/secciones\/temas-wordpress\/"},{"@type":"ListItem","position":3,"name":"Estilos personalizados para temas de bloques de WordPress utilizando un tema hijo"}]},{"@type":"WebSite","@id":"https:\/\/kinqsta.com\/es\/#website","url":"https:\/\/kinqsta.com\/es\/","name":"Kinsta\u00ae","description":"Soluciones de alojamiento premium, r\u00e1pidas y seguras","publisher":{"@id":"https:\/\/kinqsta.com\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinqsta.com\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/kinqsta.com\/es\/#organization","name":"Kinsta","url":"https:\/\/kinqsta.com\/es\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kinqsta.com\/es\/#\/schema\/logo\/image\/","url":"https:\/\/kinqsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinqsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinqsta.com\/es\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/kinsta.es\/","https:\/\/x.com\/Kinsta_ES","https:\/\/www.instagram.com\/kinstahosting\/","https:\/\/www.linkedin.com\/company\/kinsta\/","https:\/\/www.pinterest.com\/kinstahosting\/","https:\/\/www.youtube.com\/c\/Kinsta"]},{"@type":"Person","@id":"https:\/\/kinqsta.com\/es\/#\/schema\/person\/8cce3d6bbd8a2aa46850235d997793ed","name":"Bud Kraus","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kinqsta.com\/es\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/4720f5a00a3f527eda2576d524728bc2?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4720f5a00a3f527eda2576d524728bc2?s=96&d=mm&r=g","caption":"Bud Kraus"},"description":"Bud Kraus has been working with WordPress as an in-class and online instructor, site developer, and content creator since 2009. He has produced instructional videos and written many articles for WordPress businesses.","url":"https:\/\/kinqsta.com\/es\/blog\/author\/budkraus\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinqsta.com\/es\/wp-json\/wp\/v2\/posts\/79699","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinqsta.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinqsta.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinqsta.com\/es\/wp-json\/wp\/v2\/users\/313"}],"replies":[{"embeddable":true,"href":"https:\/\/kinqsta.com\/es\/wp-json\/wp\/v2\/comments?post=79699"}],"version-history":[{"count":6,"href":"https:\/\/kinqsta.com\/es\/wp-json\/wp\/v2\/posts\/79699\/revisions"}],"predecessor-version":[{"id":79717,"href":"https:\/\/kinqsta.com\/es\/wp-json\/wp\/v2\/posts\/79699\/revisions\/79717"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinqsta.com\/es\/wp-json\/kinsta\/v1\/posts\/79699\/translations\/en"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinqsta.com\/es\/wp-json\/kinsta\/v1\/posts\/79699\/translations\/it"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinqsta.com\/es\/wp-json\/kinsta\/v1\/posts\/79699\/translations\/pt"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinqsta.com\/es\/wp-json\/kinsta\/v1\/posts\/79699\/translations\/fr"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinqsta.com\/es\/wp-json\/kinsta\/v1\/posts\/79699\/translations\/de"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinqsta.com\/es\/wp-json\/kinsta\/v1\/posts\/79699\/translations\/jp"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinqsta.com\/es\/wp-json\/kinsta\/v1\/posts\/79699\/translations\/nl"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinqsta.com\/es\/wp-json\/kinsta\/v1\/posts\/79699\/translations\/es"},{"href":"https:\/\/kinqsta.com\/es\/wp-json\/kinsta\/v1\/posts\/79699\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinqsta.com\/es\/wp-json\/wp\/v2\/media\/79700"}],"wp:attachment":[{"href":"https:\/\/kinqsta.com\/es\/wp-json\/wp\/v2\/media?parent=79699"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinqsta.com\/es\/wp-json\/wp\/v2\/tags?post=79699"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinqsta.com\/es\/wp-json\/wp\/v2\/topic?post=79699"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}