<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>genesis &#8211; danisanchez.net</title>
	<atom:link href="https://danisanchez.net/tag/genesis/feed/" rel="self" type="application/rss+xml" />
	<link>https://danisanchez.net</link>
	<description></description>
	<lastBuildDate>Wed, 10 Aug 2022 16:55:21 +0000</lastBuildDate>
	<language>es</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://danisanchez.net/wp-content/uploads/2026/07/cropped-favicon-32x32.png</url>
	<title>genesis &#8211; danisanchez.net</title>
	<link>https://danisanchez.net</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Crea tus propios bloques de Gutenberg con Genesis Custom Blocks</title>
		<link>https://danisanchez.net/crea-tus-propios-bloques-de-gutenberg-con-genesis-custom-blocks/</link>
					<comments>https://danisanchez.net/crea-tus-propios-bloques-de-gutenberg-con-genesis-custom-blocks/#respond</comments>
		
		<dc:creator><![CDATA[dani.sanchez]]></dc:creator>
		<pubDate>Wed, 10 Aug 2022 16:55:21 +0000</pubDate>
				<category><![CDATA[Genesis]]></category>
		<category><![CDATA[Tutoriales]]></category>
		<category><![CDATA[genesis]]></category>
		<category><![CDATA[gutenberg]]></category>
		<guid isPermaLink="false">https://danisanchez.net/?p=13398</guid>

					<description><![CDATA[Genesis Custom Blocks es un plugin gratuito para Genesis Framework, con el que podemos crear nuestros propios bloques de Gutenberg, bien para nuestro propio uso, bien para dejarlos listos para que los usen nuestros usuarios o clientes. Hay que tener en cuenta que no vamos a contar con un constructor visual al estilo de Elementor [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph"><strong>Genesis Custom Blocks</strong> es un plugin gratuito para <strong>Genesis Framework</strong>, con el que podemos <strong>crear nuestros propios bloques de Gutenberg</strong>, bien para nuestro propio uso, bien para dejarlos listos para que los usen nuestros usuarios o clientes.</p>



<p class="wp-block-paragraph">Hay que tener en cuenta que no vamos a contar con un constructor visual al estilo de Elementor o Divi para diseñar y construir nuestros bloques, sino que <strong>tendremos que tener conocimientos básicos de HTML y CSS</strong> para construir la estructura física del bloque, pero toda la parte de lógica y programación nos la dará el plugin.</p>



<p class="wp-block-paragraph">Una de las principales características del constructor de bloques es que <strong>podemos crear campos dinámicos que podrá rellenar nuestro usuario/cliente</strong> para crear el contenido del bloque.</p>



<p class="wp-block-paragraph">Imaginemos que vamos a crear un CTA (call to action o llamada la acción) consistente en un mensaje o título, un párrafo y un botón con un enlace. Pues podríamos crear un campo dinámico para que el usuario rellene el título del CTA, el texto del párrafo y la URL link de este.</p>



<p class="wp-block-paragraph">Algo similar a esto:</p>



<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="1024" height="289" src="https://danisanchez.net/wp-content/uploads/2022/08/001-banner-cta-1024x289.jpg" alt="" class="wp-image-13399" srcset="https://danisanchez.net/wp-content/uploads/2022/08/001-banner-cta-1024x289.jpg 1024w, https://danisanchez.net/wp-content/uploads/2022/08/001-banner-cta-300x85.jpg 300w, https://danisanchez.net/wp-content/uploads/2022/08/001-banner-cta-768x217.jpg 768w, https://danisanchez.net/wp-content/uploads/2022/08/001-banner-cta.jpg 1105w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Artículo disponible en vídeo</p>
</blockquote>



<iframe src="https://www.youtube-nocookie.com/embed/atbJYc0iQq8" title="YouTube video player" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen="" width="100%" height="400" frameborder="0"></iframe>



<h2 class="wp-block-heading"><strong>1. Instalar Genesis Framework y un child-theme</strong></h2>



<p class="wp-block-paragraph">Desde hace un tiempo, <strong>el framework de Genesis es gratuito</strong>, por lo que ya no hay excusa para no probarlo. Puedes descargarlo desde la web de <a rel="noreferrer noopener" href="https://www.studiopress.com/get-genesis/" target="_blank"><strong>studiopress</strong></a>. </p>



<p class="wp-block-paragraph">Lo siguiente es instalar uno tema hijo de Génesis. Lo más habitual es instalar su <strong>Sample Theme</strong>, que puedes descargar desde <a rel="noreferrer noopener" href="https://github.com/studiopress/genesis-sample" target="_blank"><strong>github</strong></a>.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="991" height="486" src="https://danisanchez.net/wp-content/uploads/2022/08/002-temas-instalados.webp" alt="" class="wp-image-13402" srcset="https://danisanchez.net/wp-content/uploads/2022/08/002-temas-instalados.webp 991w, https://danisanchez.net/wp-content/uploads/2022/08/002-temas-instalados-300x147.webp 300w, https://danisanchez.net/wp-content/uploads/2022/08/002-temas-instalados-768x377.webp 768w" sizes="(max-width: 991px) 100vw, 991px" /></figure>



<h2 class="wp-block-heading"><strong>2. Instalar Genesis Custom Blocks</strong></h2>



<p class="wp-block-paragraph">Puedes obtenerlo directamente desde el <strong><a rel="noreferrer noopener" href="https://wordpress.org/plugins/genesis-custom-blocks/" target="_blank">repositorio de WordPress</a></strong>:</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="834" height="779" src="https://danisanchez.net/wp-content/uploads/2022/08/003-instalar-genesis-custom-blocks.webp" alt="" class="wp-image-13403" srcset="https://danisanchez.net/wp-content/uploads/2022/08/003-instalar-genesis-custom-blocks.webp 834w, https://danisanchez.net/wp-content/uploads/2022/08/003-instalar-genesis-custom-blocks-300x280.webp 300w, https://danisanchez.net/wp-content/uploads/2022/08/003-instalar-genesis-custom-blocks-768x717.webp 768w" sizes="auto, (max-width: 834px) 100vw, 834px" /></figure>



<h2 class="wp-block-heading"><strong>3. Crear un nuevo bloque personalizado</strong></h2>



<p class="wp-block-paragraph">Una vez instalado Genesis Custom Blocks, iremos al menú principal <strong>Bloques personalizados</strong> &#8211; <strong>Añadir nuevo</strong></p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="739" height="413" src="https://danisanchez.net/wp-content/uploads/2022/08/004-anadir-nuevo-bloque.webp" alt="" class="wp-image-13404" srcset="https://danisanchez.net/wp-content/uploads/2022/08/004-anadir-nuevo-bloque.webp 739w, https://danisanchez.net/wp-content/uploads/2022/08/004-anadir-nuevo-bloque-300x168.webp 300w" sizes="auto, (max-width: 739px) 100vw, 739px" /></figure>



<ol class="wp-block-list">
<li>Indicamos un <strong>nombre</strong> para nuestro bloque personalizado, por ejemplo: <strong>CTA Máster en WordPRess</strong>. </li>



<li>Establecemos un <strong>slug</strong> para nuestro bloque personalizado (intenta evitar tildes y caracteres especiales que no sean guiones básicos).</li>



<li>Escoge un <strong>icono</strong> representativo de tu bloque personalizado.</li>



<li>Indica la <strong>categoría</strong> de bloques de Gutenberg, por ejemplo, dentro de los bloques de Texto.</li>



<li>Establece <strong>palabras clave</strong> para localizar rápidamente tu bloque personalizado dentro del grupo de bloques de Gutenberg.</li>



<li>Seleccionar los <strong>post types</strong> donde quieres hacer uso de tu bloque personalizado, por ejemplo en <strong>Entradas y Páginas</strong>.</li>
</ol>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="584" src="https://danisanchez.net/wp-content/uploads/2022/08/005-configurar-bloque-1024x584.webp" alt="" class="wp-image-13405" srcset="https://danisanchez.net/wp-content/uploads/2022/08/005-configurar-bloque-1024x584.webp 1024w, https://danisanchez.net/wp-content/uploads/2022/08/005-configurar-bloque-300x171.webp 300w, https://danisanchez.net/wp-content/uploads/2022/08/005-configurar-bloque-768x438.webp 768w, https://danisanchez.net/wp-content/uploads/2022/08/005-configurar-bloque.webp 1388w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<h2 class="wp-block-heading"><strong>4. Añadir los campos personalizados</strong></h2>



<p class="wp-block-paragraph">Para el ejemplo crearemos <strong>cuatro campos personalizados</strong> que podrán ser rellenados para construir el contenido del bloque (por supuesto tú puedes crear los que necesites para el tuyo).</p>



<p class="wp-block-paragraph">El bloque contendrá los siguientes campos:</p>



<ol class="wp-block-list">
<li><strong>Precio Máster</strong> (precio-master) de tipo texto (he comprobado que los campos de tipo número tienen problemas con los decimales).</li>



<li><strong>Cupón Máster</strong> (cupon-master) de tipo texto.</li>



<li><strong>Fecha de validez</strong> (fecha-de-validez) de tipo texto.</li>



<li><strong>URL Máster</strong> (url-master) de tipo texto.</li>
</ol>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="673" src="https://danisanchez.net/wp-content/uploads/2022/08/006-configurar-campo-1024x673.webp" alt="" class="wp-image-13406" srcset="https://danisanchez.net/wp-content/uploads/2022/08/006-configurar-campo-1024x673.webp 1024w, https://danisanchez.net/wp-content/uploads/2022/08/006-configurar-campo-300x197.webp 300w, https://danisanchez.net/wp-content/uploads/2022/08/006-configurar-campo-768x505.webp 768w, https://danisanchez.net/wp-content/uploads/2022/08/006-configurar-campo.webp 1387w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<h2 class="wp-block-heading"><strong>5. Crear los directorios y archivos del bloque personalizado</strong></h2>



<p class="wp-block-paragraph">Tendremos que crear un directorio <strong>/blocks</strong> dentro del tema activo (en nuestro caso, el child-theme <strong>genesis-sample-develop</strong>).</p>



<p class="wp-block-paragraph">Hay 2 formas de crear los archivos del bloque, en ambas necesitamos el slug del bloque personalizado, en nuestro caso <strong>cta-master-en-wordpress</strong>:</p>



<ol class="wp-block-list">
<li>Crear un archivo dentro de /blocks llamado <strong>block-{slug}.php</strong> es decir «<strong>block-cta-master-en-wordpress.php</strong></li>



<li>Creando un subdirectorio y archivo <strong>/{slug}/block.php</strong>, es decir <strong>/cta-master-en-wordpress/block.php</strong></li>
</ol>



<p class="wp-block-paragraph">Y además añadiremos un archivo <strong>block.css</strong> para los estilos del bloque (este archivo css no hay que declararlo junto al resto de estilos de la plantilla, será reconocido automáticamente por el plugin).</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="311" height="420" src="https://danisanchez.net/wp-content/uploads/2022/08/007-ruta-bloque-custom.webp" alt="" class="wp-image-13407" srcset="https://danisanchez.net/wp-content/uploads/2022/08/007-ruta-bloque-custom.webp 311w, https://danisanchez.net/wp-content/uploads/2022/08/007-ruta-bloque-custom-222x300.webp 222w" sizes="auto, (max-width: 311px) 100vw, 311px" /></figure>



<p class="wp-block-paragraph">Dentro del archivo <strong>block.php</strong> insertamos el código:</p>



<pre class="wp-block-code"><code>&lt;div class="cta-master-en-wordpress"&gt;
    &lt;h2&gt;&lt;strong&gt;Inscríbete por solo &lt;?php block_field('precio-master'); ?&gt;€&lt;/strong&gt;&lt;/h2&gt;
    &lt;p&gt;
        CÓDIGO CUPÓN: &lt;strong&gt;&lt;?php block_field('cupon-master'); ?&gt;&lt;/strong&gt; &lt;br/&gt;
        VÁLIDO HASTA EL: &lt;strong&gt;&lt;?php block_field('fecha-de-validez'); ?&gt;&lt;/strong&gt;
    &lt;/p&gt;
    &lt;a class="button" href="&lt;?php block_field('url-master'); ?&gt;" target="_blank"&gt;Inscríbete en UDEMY&lt;/a&gt;
&lt;/div&gt;</code></pre>



<p class="wp-block-paragraph">Las funciones <strong>block_field(&#8216;slug-del-campo&#8217;)</strong>, corresponden a los campos dinámicos que creamos para el bloque personalizado.</p>



<p class="wp-block-paragraph">Y añadiremos el siguiente código CSS en el archivo <strong>block.css</strong>:</p>



<pre class="wp-block-code"><code>.cta-master-en-wordpress{
    clear:both;
    width:100%;
    padding:25px;
    background:#f7f7f7;
    text-align:center;
}

.cta-master-en-wordpress a{
    background:#fac038;
    color:#222222;
}</code></pre>



<h2 class="wp-block-heading"><strong>6. Insertar y configurar el bloque personalizado</strong></h2>



<p class="wp-block-paragraph">Ahora podemos dirigirnos a cualquier <strong>página o entrada</strong> y buscar nuestro bloque personalizado:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="479" src="https://danisanchez.net/wp-content/uploads/2022/08/008-seleccionar-bloque-1024x479.webp" alt="" class="wp-image-13409" srcset="https://danisanchez.net/wp-content/uploads/2022/08/008-seleccionar-bloque-1024x479.webp 1024w, https://danisanchez.net/wp-content/uploads/2022/08/008-seleccionar-bloque-300x140.webp 300w, https://danisanchez.net/wp-content/uploads/2022/08/008-seleccionar-bloque-768x359.webp 768w, https://danisanchez.net/wp-content/uploads/2022/08/008-seleccionar-bloque.webp 1134w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">Tras añadirnos, nos pedirá rellenar los <strong>campos personalizados</strong>:</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="780" height="582" src="https://danisanchez.net/wp-content/uploads/2022/08/009-rellenar-bloque.webp" alt="" class="wp-image-13410" srcset="https://danisanchez.net/wp-content/uploads/2022/08/009-rellenar-bloque.webp 780w, https://danisanchez.net/wp-content/uploads/2022/08/009-rellenar-bloque-300x224.webp 300w, https://danisanchez.net/wp-content/uploads/2022/08/009-rellenar-bloque-768x573.webp 768w" sizes="auto, (max-width: 780px) 100vw, 780px" /></figure>



<p class="wp-block-paragraph">Y tras guardar, este sería el resultado en el front de la página:</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="820" height="528" src="https://danisanchez.net/wp-content/uploads/2022/08/010-resultado-final-bloque.webp" alt="" class="wp-image-13411" srcset="https://danisanchez.net/wp-content/uploads/2022/08/010-resultado-final-bloque.webp 820w, https://danisanchez.net/wp-content/uploads/2022/08/010-resultado-final-bloque-300x193.webp 300w, https://danisanchez.net/wp-content/uploads/2022/08/010-resultado-final-bloque-768x495.webp 768w" sizes="auto, (max-width: 820px) 100vw, 820px" /></figure>



<p class="wp-block-paragraph">Como podemos ver, esto abre un amplio abanico de opciones dentro de la edición por bloques de Gutenberg, donde podemos crear tantos bloques necesitemos, ya sea para nuestro uso particular, o ya sea para integrarlos en plantillas que luego puedan usar nuestros usuarios o clientes. Las posibilidades son infinitas.</p>



<p class="wp-block-paragraph">Espero que te haya resultado útil este artículo y nos vemos en siguiente <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
					<wfw:commentRss>https://danisanchez.net/crea-tus-propios-bloques-de-gutenberg-con-genesis-custom-blocks/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Crear zonas de widgets en Genesis Framework</title>
		<link>https://danisanchez.net/crear-zonas-de-widgets-en-genesis-framework/</link>
					<comments>https://danisanchez.net/crear-zonas-de-widgets-en-genesis-framework/#respond</comments>
		
		<dc:creator><![CDATA[dani.sanchez]]></dc:creator>
		<pubDate>Wed, 14 Apr 2021 08:15:12 +0000</pubDate>
				<category><![CDATA[Genesis]]></category>
		<category><![CDATA[Publicaciones]]></category>
		<category><![CDATA[Tutoriales]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[genesis]]></category>
		<guid isPermaLink="false">https://www.gestionatuweb.net/?p=10513</guid>

					<description><![CDATA[En Genesis Framework es muy sencillo crear nuevas zonas de Widgets para acondicionar los contenidos de nuestra web. De hecho los childs theme de Genesis no dejan de ser plantillas con unas zonas de widgets predefinidas pensadas para dar forma a un módelo concreto de web (junto con su style.css correspondiente). Usando Genesis Framework con [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">En <a href="https://shareasale.com/r.cfm?b=1320631&amp;u=1426295&amp;m=41388&amp;urllink=&amp;afftrack=" target="_blank" rel="noreferrer noopener">Genesis Framework</a> es muy sencillo crear nuevas zonas de Widgets para acondicionar los contenidos de nuestra web. De hecho los childs theme de Genesis no dejan de ser plantillas con unas zonas de widgets predefinidas pensadas para dar forma a un módelo concreto de web (junto con su style.css correspondiente).</p>



<p class="wp-block-paragraph">Usando Genesis Framework con su Sample Theme podemos dar forma a prácticamente cualquier tipo de web y las zonas de widgets nos pueden venir muy bien para estructurarla o dejarlas preparadas para que las usen nuestros clientes.</p>



<h2 class="wp-block-heading">Registrar la zona de widget para la home</h2>



<p class="wp-block-paragraph">Primero debemos registrar una zona de widget, esto podemos hacerlo en el archivo de funciones (functions.php) del child-theme (nunca en el functions.php de Genesis).</p>



<pre class="wp-block-code"><code>//Registrar Widget Cabecera Home
genesis_register_sidebar(array(
	'id' =&gt; 'cabecera-home-widget-area',
	'name' =&gt; __('Cabecera Home', 'genesis'),
	'description' =&gt; __('Widget para la cabecera de la página principal', 'childtheme')
));</code></pre>



<p class="wp-block-paragraph">Como se trata de un widget que solamente queremos hacer visible en la página principal de la web, podemos crear un archivo <strong>front-page.php con este contenido</strong>:</p>



<pre class="wp-block-code"><code>&lt;?php
//Mostrar Cabecera Home Widget Area
function cabecera_home_widget_area(){
    genesis_widget_area('cabecera-home-widget-area', array(
        'before' =&gt; '&lt;section class="cabecera-home"&gt;',
        'after' =&gt; '&lt;/section&gt;'
    ));
}
add_action('genesis_after_header', 'cabecera_home_widget_area');

genesis();
?&gt;</code></pre>



<p class="wp-block-paragraph">Es muy importante especificar el mismo ID de sidebar que usamos al registrarlo &#8216;cabecera-home-widget-area&#8217;.</p>



<p class="wp-block-paragraph">Nuestro widget irá dentro de una sección (&lt;section&gt;) con la clase CSS &#8216;cabecera-home&#8217;, de forma que podremos aplicarle estilos posteriormente.</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="650" height="616" src="https://danisanchez.net/wp-content/uploads/2021/04/imagen-4.png" alt="" class="wp-image-10514" srcset="https://danisanchez.net/wp-content/uploads/2021/04/imagen-4.png 650w, https://danisanchez.net/wp-content/uploads/2021/04/imagen-4-300x284.png 300w" sizes="auto, (max-width: 650px) 100vw, 650px" /></figure></div>



<p class="wp-block-paragraph">En esta zona podemos agregar cualquier widget, ya dea de WordPress, de Genesis o un simple HTML personalizado para darle el formato que deseemos a nuestra cabecera. Por ejemplo,  vamos a insertar un calendario:</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="569" height="671" src="https://danisanchez.net/wp-content/uploads/2021/04/imagen-5.png" alt="" class="wp-image-10515" srcset="https://danisanchez.net/wp-content/uploads/2021/04/imagen-5.png 569w, https://danisanchez.net/wp-content/uploads/2021/04/imagen-5-254x300.png 254w" sizes="auto, (max-width: 569px) 100vw, 569px" /></figure></div>



<p class="wp-block-paragraph">Y este es el resultado en nuestra página principal:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="747" src="https://danisanchez.net/wp-content/uploads/2021/04/imagen-6-1024x747.png" alt="" class="wp-image-10516" srcset="https://danisanchez.net/wp-content/uploads/2021/04/imagen-6-1024x747.png 1024w, https://danisanchez.net/wp-content/uploads/2021/04/imagen-6-300x219.png 300w, https://danisanchez.net/wp-content/uploads/2021/04/imagen-6-768x560.png 768w, https://danisanchez.net/wp-content/uploads/2021/04/imagen-6.png 1266w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">Como puedes ver, lo primero que carga la página es nuestra zona de widget, ya que en la página front-page.php es lo primero que encuentra, además la hemos anclado en el hook &#8216;genesis_after_header&#8217;, justo después de la cabecera de genesis.</p>



<p class="wp-block-paragraph">Después hemos llamado a genesis(); que se encarga de mostrar el content de la página (contenido que creamos con el editor y que se guarda en la base de datos).</p>



<h2 class="wp-block-heading">Registrar una zona de widget para todas las  páginas</h2>



<p class="wp-block-paragraph">Ahora vamos a crear una zona de widget que se mostrará al final de todas las páginas de nuestra web, algo que podemos aprovechar para insertar un banner o un formulario de newsletter.</p>



<p class="wp-block-paragraph">Volvemos a nuestro archivo functions.php del child  theme para registrar la nueva zona de widget:</p>



<pre class="wp-block-code"><code>//Registrar Widget Banner Footer
genesis_register_sidebar(array(
	'id' =&gt; 'banner-footer-widget-area',
	'name' =&gt; __('Banner Footer', 'genesis'),
	'description' =&gt; __('Widget para banner final en todas las páginas', 'childtheme')
));</code></pre>



<p class="wp-block-paragraph">La forma de mostrar este banner en todas las páginas (y entradas) de la web es ponerlo dentro del propio archivo de funciones, por lo que lo añadimos así:</p>



<pre id="block-5ed0795d-c25f-445c-b7ff-a54af70fad58" class="wp-block-code"><code>//Mostrar Banner Footer en todo el site
function banner_footer_widget_area(){
    genesis_widget_area('banner-footer-widget-area', array(
        'before' =&gt; '&lt;section class="banner-footer"&gt;',
        'after' =&gt; '&lt;/section&gt;'
    ));
}
add_action('genesis_before_footer', 'banner_footer_widget_area');</code></pre>



<p class="wp-block-paragraph">En este caso usamos el hook &#8216;genesis_before_footer&#8217; que posiciona nuestro banner justo antes del footer de la web.</p>



<p class="wp-block-paragraph">Si quieres ver una guía de los hooks de Genesis puedes visitar mi artículo (en construcción): <a rel="noreferrer noopener" href="https://danisanchez.net/hooks-de-genesis-framework-init-header-y-framework-parte-1/" target="_blank"><strong>Hooks de Genesis Framework (init, header y framework)</strong></a>.</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="543" height="607" src="https://danisanchez.net/wp-content/uploads/2021/04/imagen-7.png" alt="" class="wp-image-10519" srcset="https://danisanchez.net/wp-content/uploads/2021/04/imagen-7.png 543w, https://danisanchez.net/wp-content/uploads/2021/04/imagen-7-268x300.png 268w" sizes="auto, (max-width: 543px) 100vw, 543px" /></figure></div>



<p class="wp-block-paragraph">Y el resultado:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="742" src="https://danisanchez.net/wp-content/uploads/2021/04/imagen-8-1024x742.png" alt="" class="wp-image-10520" srcset="https://danisanchez.net/wp-content/uploads/2021/04/imagen-8-1024x742.png 1024w, https://danisanchez.net/wp-content/uploads/2021/04/imagen-8-300x217.png 300w, https://danisanchez.net/wp-content/uploads/2021/04/imagen-8-768x557.png 768w, https://danisanchez.net/wp-content/uploads/2021/04/imagen-8.png 1264w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">Utilizando la clase CSS de la sección &#8216;banner-footer&#8217;, podremos centrarlo darle el tamaño que necesitemos, etc.</p>



<p class="wp-block-paragraph">Recuerda que este widget será visible en cualquier página o entrada de la web, vemos cómo queda en una entrada:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="719" src="https://danisanchez.net/wp-content/uploads/2021/04/imagen-9-1024x719.png" alt="" class="wp-image-10521" srcset="https://danisanchez.net/wp-content/uploads/2021/04/imagen-9-1024x719.png 1024w, https://danisanchez.net/wp-content/uploads/2021/04/imagen-9-300x211.png 300w, https://danisanchez.net/wp-content/uploads/2021/04/imagen-9-768x539.png 768w, https://danisanchez.net/wp-content/uploads/2021/04/imagen-9.png 1262w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph"><strong>Podemos condicionar dónde queremos que aparezca</strong> usando condicionales if y comprobando el tipo de contenido, por ejemplo:</p>



<pre class="wp-block-code"><code>&lt;?php
//Aplica a todas las páginas
if(is_page()){
    //Código para mostrar el widget
}
?&gt;</code></pre>



<pre id="block-46361a1b-e6e3-4050-8997-2dfc3d8c9992" class="wp-block-code"><code>&lt;?php
//Aplica a todo el contenido que sea de tipo entrada (de cualquier tipo)
if(is_single()){
    //Código para mostrar el widget
}
?&gt;</code></pre>



<pre id="block-f2857ec7-5e90-426a-8d9d-aa4223272bf4" class="wp-block-code"><code>&lt;?php
//Aplica a un custom post determinado
if(is_singular('custom_post')){
    //Código para mostrar el widget
}
?&gt;</code></pre>



<pre id="block-fd1334ae-9ef7-4e85-9e37-cb730d09e9fc" class="wp-block-code"><code>&lt;?php
//Aplica a la página de blog
if(is_home()){
    //Código para mostrar el widget
}
?&gt;</code></pre>



<pre id="block-25c1fab3-62d4-48b5-addc-57de5053309d" class="wp-block-code"><code>&lt;?php
//Aplica a la página de resultados de búsqueda
if(is_results()){
    //Código para mostrar el widget
}
?&gt;</code></pre>



<p class="wp-block-paragraph">Espero que te sea de utilidad este artículo y nos vemos en el siguiente post <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
]]></content:encoded>
					
					<wfw:commentRss>https://danisanchez.net/crear-zonas-de-widgets-en-genesis-framework/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Hooks de Genesis Framework (init, header y framework) &#8211; Parte 1</title>
		<link>https://danisanchez.net/hooks-de-genesis-framework-init-header-y-framework-parte-1/</link>
		
		<dc:creator><![CDATA[dani.sanchez]]></dc:creator>
		<pubDate>Thu, 31 Dec 2020 12:40:11 +0000</pubDate>
				<category><![CDATA[Genesis]]></category>
		<category><![CDATA[Publicaciones]]></category>
		<category><![CDATA[Tutoriales]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[genesis]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://www.gestionatuweb.net/?p=9616</guid>

					<description><![CDATA[Hooks del init.php init.php es un fichero que se encuentra dentro del directorio principal de Genesis, concretamente en la ruta: themes/genesis/lib/init.php Es el primer archivo que se carga cuando ejecutamos Genesis, por tanto las funciones que «enganchemos» aquí, serán las primeras que se carguen en el arranque de nuestra web. Existen 4 hooks principales dentro [&#8230;]]]></description>
										<content:encoded><![CDATA[
<h2 class="wp-block-heading">Hooks del init.php</h2>



<p class="wp-block-paragraph">init.php es un fichero que se encuentra dentro del directorio principal de Genesis, concretamente en la ruta: </p>



<p class="wp-block-paragraph"><em><strong>themes/genesis/lib/init.php</strong></em></p>



<p class="wp-block-paragraph">Es el primer archivo que se carga cuando ejecutamos Genesis, por tanto las funciones que «enganchemos» aquí, serán las primeras  que se carguen en el arranque de nuestra web.</p>



<p class="wp-block-paragraph">Existen 4 hooks principales dentro de init.php:</p>



<ol class="wp-block-list"><li><strong>genesis_pre</strong>: Es el primer hook que puedes usar en Genesis, ninguna otra función de Genesis se carga antes de este.</li><li><strong>genesis_pre_framework</strong>: Este hook se ejecuta justo después de que Genesis declare las constantes del framework. Por lo que si tu función depende de alguna de estas constantes, deberías usarlo aquí en lugar de en genesis_pre.</li><li><strong>genesis_init</strong>: Se ejecuta después de que se cargue el framework, pero antes de que se cargue la configuración de los themes. Úsalo si tus funciones necesitan cargarse antes del setup del theme, pero dependen de alguna función del framework.</li><li><strong>genesis_setup</strong>: Se usa para definir la configuración del theme.</li></ol>



<p class="wp-block-paragraph">Si abrimos el archivo podemos localizarlos facilmente por los <strong>do_action()</strong></p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="800" height="409" src="https://danisanchez.net/wp-content/uploads/2020/10/hooks-init.jpg" alt="" class="wp-image-9619" srcset="https://danisanchez.net/wp-content/uploads/2020/10/hooks-init.jpg 800w, https://danisanchez.net/wp-content/uploads/2020/10/hooks-init-300x153.jpg 300w, https://danisanchez.net/wp-content/uploads/2020/10/hooks-init-768x393.jpg 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></figure>



<p class="wp-block-paragraph"><strong>do_action(&#8216;genesis_pre&#8217;) es el hook o gancho</strong>, que al engancharlo con tu función:</p>



<pre class="wp-block-code"><code>add_action('genesis_pre', mi_funcion);</code></pre>



<p class="wp-block-paragraph">Sería el equivalente a escribir mi_funcion() en esa parte del archivo init.php, pero sin necesidad de tener que editar init.php.<strong> Recuerda que nunca debes modificar un archivo de Genesis directamente, pues todos los cambios se perderán al actualizar a una nueva versión</strong>.</p>



<h2 class="wp-block-heading">Hooks del header.php</h2>



<p class="wp-block-paragraph">Existe 2 archivos header.php, uno situado en <strong>themes/genesis/header.php</strong> y otro situado en <strong>themes/genesis/lib/structure/header.php</strong> con hooks que conectan directamente con el primero.</p>



<p class="has-medium-font-size wp-block-paragraph"><strong>Hooks que podemos encontrar genesis/header.php son:</strong></p>



<ol class="wp-block-list"><li><strong>genesis_doctype</strong>: Ejecuta tus funciones justo depués del Doctype:</li></ol>



<pre class="wp-block-code"><code>&lt;!DOCTYPE html&gt;
&lt;html lang="es"&gt;
&lt;head itemscope itemtype="https://schema.org/WebSite"&gt;
&lt;meta charset="UTF-8" /&gt;</code></pre>



<p class="wp-block-paragraph">2. <strong>genesis_title</strong>: Se antepone a la etiqueta &lt;title&gt; por defecto del documento, por ejemplo:</p>



<pre class="wp-block-code"><code>add_action('genesis_title', 'mi_titulo');
function mi_titulo(){
	echo "&lt;title&gt;Mi título&lt;/title&gt;";
}</code></pre>



<p class="wp-block-paragraph">Coloca «Mi título» por encima del título por defecto, aunque no lo sustituye:</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="795" height="163" src="https://danisanchez.net/wp-content/uploads/2020/10/02.genesis_title.jpg" alt="" class="wp-image-9622" srcset="https://danisanchez.net/wp-content/uploads/2020/10/02.genesis_title.jpg 795w, https://danisanchez.net/wp-content/uploads/2020/10/02.genesis_title-300x62.jpg 300w, https://danisanchez.net/wp-content/uploads/2020/10/02.genesis_title-768x157.jpg 768w" sizes="auto, (max-width: 795px) 100vw, 795px" /></figure>



<p class="wp-block-paragraph">En este caso prevalece el primer &lt;title&gt;</p>



<p class="wp-block-paragraph">3. <strong>genesis_meta</strong>: Muy útil para añadir tus propias meta etiquetas. Normalmente las opciones de SEO de Genesis ya añaden las meta etiquetas necesarias, pero si necesitas alguna específica para un servicio o red social concreta, puedes añadirla manualmente aquí.</p>



<pre class="wp-block-code"><code>add_action('genesis_meta', 'meta_descripcion');
function meta_descripcion(){
    echo "&lt;meta description='Mi meta descripción' /&gt;";
}</code></pre>



<p class="wp-block-paragraph">4. <strong>genesis_before</strong>: Añade tus funciones justo antes de la esctructura web de Genesis, por encima de la cabecera. Por ejemplo:</p>



<pre class="wp-block-code"><code>add_action('genesis_before', 'mi_encabezado');
function mi_encabezado(){
    echo '&lt;h2&gt;Mi encabezado&lt;/h2&gt;';
}</code></pre>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="848" height="508" src="https://danisanchez.net/wp-content/uploads/2020/10/03.genesis_before.jpg" alt="" class="wp-image-9627" srcset="https://danisanchez.net/wp-content/uploads/2020/10/03.genesis_before.jpg 848w, https://danisanchez.net/wp-content/uploads/2020/10/03.genesis_before-300x180.jpg 300w, https://danisanchez.net/wp-content/uploads/2020/10/03.genesis_before-768x460.jpg 768w" sizes="auto, (max-width: 848px) 100vw, 848px" /></figure>



<p class="wp-block-paragraph">5. <strong>genesis_before_header</strong>: Muy parecido a genesis_before, pero a continuación de algunos a links de Génesis. Se ubica justo antes de la etiqueta de apertura del header (&lt;header&gt;).</p>



<figure class="wp-block-image size-full"><a href="https://danisanchez.net/wp-content/uploads/2020/10/genesis_before_header.jpg"><img loading="lazy" decoding="async" width="800" height="269" src="https://danisanchez.net/wp-content/uploads/2020/10/genesis_before_header.jpg" alt="" class="wp-image-9629" srcset="https://danisanchez.net/wp-content/uploads/2020/10/genesis_before_header.jpg 800w, https://danisanchez.net/wp-content/uploads/2020/10/genesis_before_header-300x101.jpg 300w, https://danisanchez.net/wp-content/uploads/2020/10/genesis_before_header-768x258.jpg 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></a></figure>



<p class="wp-block-paragraph"><strong>6. genesis_header:</strong> Engloba todo lo que hay dentro de la estructura &lt;header&gt;&lt;/header&gt; del documento. A este hook conectan otros hooks del <strong>lib/structure/header.php</strong>, como el <em>genesis_site_title, genesis_site_description y genesis_header_right</em>. Los veremos a continuación.</p>



<p class="wp-block-paragraph"><strong>7. genesis_after_header:</strong>  Se ubica justo a continuación de la etiqueta de cierre del header (&lt;/header&gt;).</p>



<p class="has-medium-font-size wp-block-paragraph"><strong>Hooks de genesis/lib/structure/header.php:</strong></p>



<p class="wp-block-paragraph">Como comentamos en el punto anterior, dentro de este header podemos encontrar hooks que conectan directamente con genesis_header, como pueden pueden ser: </p>



<ol class="wp-block-list"><li><strong>genesis_site_title:</strong> Ubicado en el título del sitio.</li><li><strong>genesis_site_description: </strong>Ubicado en la descripción del sitio.</li><li><strong>genesis_header_right:</strong> Ubicado en la cabecera derecha del sitio (donde suelen ir los menús principales en los child-themes de Genesis).</li></ol>



<pre class="wp-block-code"><code>add_action('genesis_site_title', 'mi_site_title');
add_action('genesis_site_description', 'mi_site_description');
add_action('genesis_header_right', 'mi_header_right');

function mi_site_title(){
    echo "Mi site title";
}

function mi_site_description(){
    echo "Mi site description";
}

function mi_header_right(){
    echo "Mi header right";
}

add_action('genesis_after_header', 'mi_after_header');
function mi_after_header(){
	echo "Mi after header";
}</code></pre>



<figure class="wp-block-image size-large"><img decoding="async" src="https://danisanchez.net/wp-content/uploads/2020/11/04.genesis-header-1.jpg" alt="" class="wp-image-9750"/></figure>



<h2 class="wp-block-heading">Hooks del framework.php</h2>



<p class="wp-block-paragraph">A partir de aquí vamos a ir viendo los considerados «<strong>hooks físicos</strong>«, pues cada uno de ellos tiene su propia ubicación dentro del tema, por lo que son bastante intuitivos de gestionar.</p>



<p class="wp-block-paragraph">Dentro de <strong>framework.php</strong> encontramos 7 hooks:</p>



<ul class="wp-block-list"><li>genesis_before_content_sidebar_wrap</li><li>genesis_before_content</li><li>genesis_before_loop</li><li>genesis_loop</li><li>genesis_after_loop</li><li>genesis_after_content</li><li>genesis_after_content_sidebar_wrap</li></ul>



<p class="wp-block-paragraph">Entre ellos se encuentra problablemente el hook más importante de Genesis, el <strong>genesis_loop</strong>, que usaremos para la mayoría de tareas de programación que tengan que ver con la consulta y carga de contenidos.</p>



<p class="wp-block-paragraph"><strong>framework.php</strong> se encuentra en la ruta <em>genesis/lib/framework.php</em> donde podemos ver los hooks mencionados.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="766" height="951" src="https://danisanchez.net/wp-content/uploads/2020/11/05.genesis-framework.jpg" alt="" class="wp-image-9752" srcset="https://danisanchez.net/wp-content/uploads/2020/11/05.genesis-framework.jpg 766w, https://danisanchez.net/wp-content/uploads/2020/11/05.genesis-framework-242x300.jpg 242w" sizes="auto, (max-width: 766px) 100vw, 766px" /></figure>



<ol class="wp-block-list"><li><strong>genesis_before_content_sidebar_wrap</strong>: Se ubica justo antes del div content-sidebar-wrap (fuera del contenedor principal de la entrada o página).</li></ol>



<pre class="wp-block-code"><code>add_action('genesis_before_content_sidebar_wrap', 'mi_genesis_before_content_sidebar_wrap');
function mi_genesis_before_content_sidebar_wrap(){
	echo "&lt;b&gt;Este es el genesis_before_content_sidebar_wrap&lt;/b&gt;";
}</code></pre>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="923" height="612" src="https://danisanchez.net/wp-content/uploads/2020/11/06.genesis_before_content_sidebar_wrap.jpg" alt="" class="wp-image-9753" srcset="https://danisanchez.net/wp-content/uploads/2020/11/06.genesis_before_content_sidebar_wrap.jpg 923w, https://danisanchez.net/wp-content/uploads/2020/11/06.genesis_before_content_sidebar_wrap-300x199.jpg 300w, https://danisanchez.net/wp-content/uploads/2020/11/06.genesis_before_content_sidebar_wrap-768x509.jpg 768w" sizes="auto, (max-width: 923px) 100vw, 923px" /></figure>



<p class="wp-block-paragraph">2. <strong>genesis_before_content:</strong> Se ubica dentro del div content-sidebar-wrap justo antes del aside o barra lateral (si la hubiera):</p>



<pre class="wp-block-code"><code>add_action('genesis_before_content', 'mi_genesis_before_content');
function mi_genesis_before_content(){
	echo "&lt;b&gt;Este es el genesis_before_content&lt;/b&gt;";
}</code></pre>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="924" height="599" src="https://danisanchez.net/wp-content/uploads/2020/11/07.genesis_before_content.jpg" alt="" class="wp-image-9756" srcset="https://danisanchez.net/wp-content/uploads/2020/11/07.genesis_before_content.jpg 924w, https://danisanchez.net/wp-content/uploads/2020/11/07.genesis_before_content-300x194.jpg 300w, https://danisanchez.net/wp-content/uploads/2020/11/07.genesis_before_content-768x498.jpg 768w" sizes="auto, (max-width: 924px) 100vw, 924px" /></figure>



<p class="wp-block-paragraph">3. <strong>genesis_before_loop:</strong> Nos acercamos al loop de genesis, el momento en el que se carga el contenido de una entrada o página. Este hook se ubica justo antes.</p>



<pre class="wp-block-code"><code>add_action('genesis_before_loop', 'mi_genesis_before_loop');
function mi_genesis_before_loop(){
	echo "&lt;b&gt;Este es el genesis_before_loop&lt;/b&gt;";
}
</code></pre>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="952" height="609" src="https://danisanchez.net/wp-content/uploads/2020/11/08.genesis_before_loop.jpg" alt="" class="wp-image-9758" srcset="https://danisanchez.net/wp-content/uploads/2020/11/08.genesis_before_loop.jpg 952w, https://danisanchez.net/wp-content/uploads/2020/11/08.genesis_before_loop-300x192.jpg 300w, https://danisanchez.net/wp-content/uploads/2020/11/08.genesis_before_loop-768x491.jpg 768w" sizes="auto, (max-width: 952px) 100vw, 952px" /></figure>



<p class="wp-block-paragraph">4. <strong>genesis_loop:</strong> Este hook es usado por el propio framework de Génesis para iniciar el loop general (listados de posts, mostrar el contenido de un post&#8230;). Dedicaremos un apartado a los hooks que podemos encontrar dentro del propio loop.</p>



<p class="wp-block-paragraph">5. <strong>genesis_after_loop: </strong>No tiene misterio, se ubica justo después del loop, una vez que ha cargado todo el contenido (incluso la caja de comentarios de una entrada):</p>



<pre class="wp-block-code"><code>add_action('genesis_after_loop', 'mi_genesis_after_loop');
function mi_genesis_after_loop(){
	echo "&lt;b&gt;Este es el genesis_after_loop&lt;/b&gt;";
}</code></pre>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="920" height="503" src="https://danisanchez.net/wp-content/uploads/2020/11/09.genesis_after_loop.jpg" alt="" class="wp-image-9759" srcset="https://danisanchez.net/wp-content/uploads/2020/11/09.genesis_after_loop.jpg 920w, https://danisanchez.net/wp-content/uploads/2020/11/09.genesis_after_loop-300x164.jpg 300w, https://danisanchez.net/wp-content/uploads/2020/11/09.genesis_after_loop-768x420.jpg 768w" sizes="auto, (max-width: 920px) 100vw, 920px" /></figure>



<p class="wp-block-paragraph">6. <strong>genesis_after_content:</strong> Al contrario que su homónimo, este se ubica al final del content o sidebar si existiera. </p>



<pre class="wp-block-code"><code>add_action('genesis_after_content', 'mi_genesis_after_content');
function mi_genesis_after_content(){
	echo "&lt;b&gt;Este es el genesis_after_content&lt;/b&gt;";
}</code></pre>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="946" height="795" src="https://danisanchez.net/wp-content/uploads/2020/11/10·genesis-after-content.jpg" alt="" class="wp-image-9761" srcset="https://danisanchez.net/wp-content/uploads/2020/11/10·genesis-after-content.jpg 946w, https://danisanchez.net/wp-content/uploads/2020/11/10·genesis-after-content-300x252.jpg 300w, https://danisanchez.net/wp-content/uploads/2020/11/10·genesis-after-content-768x645.jpg 768w" sizes="auto, (max-width: 946px) 100vw, 946px" /></figure>



<p class="wp-block-paragraph">La ubicación puede ser un poco confusa dependiendo de cómo esté configurado el sidebar. Pero si observamos el código HTML, vemos cómo se ubica justo al final de la etiqueta aside del sidebar:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="549" height="424" src="https://danisanchez.net/wp-content/uploads/2020/11/11·genesis-after-content-html.jpg" alt="" class="wp-image-9762" srcset="https://danisanchez.net/wp-content/uploads/2020/11/11·genesis-after-content-html.jpg 549w, https://danisanchez.net/wp-content/uploads/2020/11/11·genesis-after-content-html-300x232.jpg 300w" sizes="auto, (max-width: 549px) 100vw, 549px" /></figure>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Añade el soporte de Genesis Framework para tus Custom Post</title>
		<link>https://danisanchez.net/anade-el-soporte-de-genesis-framework-para-tus-custom-post/</link>
		
		<dc:creator><![CDATA[dani.sanchez]]></dc:creator>
		<pubDate>Wed, 21 Oct 2020 08:06:43 +0000</pubDate>
				<category><![CDATA[Genesis]]></category>
		<category><![CDATA[Publicaciones]]></category>
		<category><![CDATA[Tutoriales]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[genesis]]></category>
		<guid isPermaLink="false">https://www.gestionatuweb.net/?p=9604</guid>

					<description><![CDATA[Hace unos meses que migré mi web de Divi a Genesis y desde entonces no paro de aprender y produndizar en este fantástico framework. Genesis integra una serie de características y funcionalidades a los posts de tipo Entrada o Página, tales como poder seleccionar el esquema de layout para el contenido, opciones de SEO, posibilidad [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Hace unos meses que migré mi web de Divi a Genesis y desde entonces no paro de aprender y produndizar en este fantástico framework.</p>



<p class="wp-block-paragraph">Genesis integra una serie de características y funcionalidades a los posts de tipo Entrada o Página, tales como poder seleccionar el esquema de layout para el contenido, opciones de SEO, posibilidad de integrar scripts, etc.</p>



<p class="wp-block-paragraph">Pero si usas un Custom Post Type o CTP, estas caractarísticas no se adhieren por defecto y debemos declaralas en el archivo de funciones del theme, o en este caso del child-theme de Genesis que estemos usando.</p>



<p class="wp-block-paragraph">Por ejemplo, yo uso un Custom Post en Gestionatuweb para mostrar mis proyectos o porfolio de trabajos, que registré como «portfolio».</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="900" height="562" src="https://danisanchez.net/wp-content/uploads/2020/10/cpt_genesis-01.jpg" alt="" class="wp-image-9606" srcset="https://danisanchez.net/wp-content/uploads/2020/10/cpt_genesis-01.jpg 900w, https://danisanchez.net/wp-content/uploads/2020/10/cpt_genesis-01-300x187.jpg 300w, https://danisanchez.net/wp-content/uploads/2020/10/cpt_genesis-01-768x480.jpg 768w" sizes="auto, (max-width: 900px) 100vw, 900px" /></figure>



<p class="wp-block-paragraph">Como puede apreciarse en la pantalla de edición de mi Custom Post, después del content no hay ninguna de las opciones que Genesis aplica a otros tipos de post, como entradas o páginas.</p>



<p class="wp-block-paragraph">Añado estas líneas en el functions.php del child-theme de genesis:</p>



<pre class="wp-block-code"><code>//Opciones de Genesis Frameworks para cualquier Custom Post
add_post_type_support('post_type_name', array('genesis-archives-settings', 'genesis-seo', 'genesis-scripts', 'genesis-layouts', 'genesis-rel-author'));</code></pre>



<p class="wp-block-paragraph"><strong>Importante sustituir el parámetro &#8216;post_type_name&#8217;, por el nombre de tu custom post, en mi caso &#8216;portfolio&#8217;.</strong></p>



<p class="wp-block-paragraph">Y compruebo que ahora aparecen opciones que antes no tenía, como las opciones de SEO, la inserción de scripts, las opciones de Diseño para elegir layout, etc.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="910" height="568" src="https://danisanchez.net/wp-content/uploads/2020/10/cpt_genesis-02-1.jpg" alt="" class="wp-image-9610" srcset="https://danisanchez.net/wp-content/uploads/2020/10/cpt_genesis-02-1.jpg 910w, https://danisanchez.net/wp-content/uploads/2020/10/cpt_genesis-02-1-300x187.jpg 300w, https://danisanchez.net/wp-content/uploads/2020/10/cpt_genesis-02-1-768x479.jpg 768w" sizes="auto, (max-width: 910px) 100vw, 910px" /></figure>



<p class="wp-block-paragraph">Añade este código de soporte para cualquier Custom Post Type que necesites, como los portfolios de WordPress, los productos de WooCommerce o tus propios CPT.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
