{"id":8887,"date":"2025-07-18T10:24:38","date_gmt":"2025-07-18T08:24:38","guid":{"rendered":"https:\/\/webshore.eu\/glossary\/hooks-actions-filters\/"},"modified":"2025-07-20T23:56:37","modified_gmt":"2025-07-20T21:56:37","slug":"ganchos-acciones-filtros","status":"publish","type":"glossary-term","link":"https:\/\/webshore.eu\/es\/term\/hooks-actions-filters\/","title":{"rendered":"Ganchos (Acciones y Filtros)"},"content":{"rendered":"<p>En el mundo WordPress, <strong>ganchos<\/strong> son la forma en que los desarrolladores interact\u00faan con el sistema sin editar los archivos del n\u00facleo. Te permiten <strong>personalizar y ampliar la funcionalidad de WordPress<\/strong> de forma segura, y los hay de dos tipos: <strong>acciones<\/strong> y <strong>filtros<\/strong>.<\/p>\n\n\n\n<p>Si WordPress fuera un tren, los ganchos ser\u00edan como paradas programadas en las que puedes saltar y a\u00f1adir o cambiar algo antes de que el tren siga avanzando.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u00bfQu\u00e9 son los ganchos?<\/h3>\n\n\n\n<p>Los ganchos son puntos integrados en el n\u00facleo de WordPress, temas o plugins donde puedes \"enganchar\" tu propio c\u00f3digo.<\/p>\n\n\n\n<p>Hay dos tipos:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Ganchos de acci\u00f3n<\/strong>: Te permiten hacer algo en un momento determinado (por ejemplo, enviar un correo electr\u00f3nico tras la publicaci\u00f3n de un post).<\/li>\n\n\n\n<li><strong>Ganchos de filtro<\/strong>: Te permite modificar los datos antes de que se utilicen (por ejemplo, cambiar el t\u00edtulo de una entrada antes de que se muestre).<\/li>\n<\/ul>\n\n\n\n<p>Los ganchos son esenciales para que WordPress sea flexible y f\u00e1cil de desarrollar. Te permiten cambiar el comportamiento <em>sin<\/em> piratear los archivos del n\u00facleo, una gran ventaja para la estabilidad y la capacidad de actualizaci\u00f3n.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Ejemplos de contexto<\/h3>\n\n\n\n<p>Digamos que quieres hacerlo:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A\u00f1adir c\u00f3digo personalizado <strong>despu\u00e9s de una entrada en el blog<\/strong> \u2192 utiliza un gancho de acci\u00f3n como <code>el_contenido<\/code>.<\/li>\n\n\n\n<li>Modifica lo que aparece en <strong>meta t\u00edtulo<\/strong> de tu sitio \u2192 utiliza un filtro como <code>wp_title<\/code>.<\/li>\n\n\n\n<li>Env\u00eda un mensaje de Slack cuando alguien env\u00ede un formulario \u2192 engancha en el gancho de acci\u00f3n del plugin de formulario.<\/li>\n\n\n\n<li>Cambia el <strong>contenido del correo electr\u00f3nico<\/strong> de un recibo de WooCommerce \u2192 utilizar un gancho de filtro.<\/li>\n<\/ul>\n\n\n\n<p>Estos ganchos act\u00faan como marcadores \"insertar aqu\u00ed\" en todo WordPress.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Por qu\u00e9 los ganchos son importantes para tu empresa<\/h3>\n\n\n\n<p>Aunque no codifiques t\u00fa mismo, entender qu\u00e9 son los ganchos (y que existen) ayuda cuando:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Vas a contratar a un desarrollador para que modifique tu sitio web<\/li>\n\n\n\n<li>Quieres personalizar un plugin sin alterar sus archivos principales<\/li>\n\n\n\n<li>Est\u00e1s depurando por qu\u00e9 ocurre -o no ocurre- algo en tu sitio web<\/li>\n<\/ul>\n\n\n\n<p>La mayor\u00eda de las personalizaciones avanzadas, especialmente en temas personalizados o desarrollo de plugins, dependen en gran medida de los ganchos.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">C\u00f3mo los utilizan los desarrolladores<\/h3>\n\n\n\n<p>Un uso t\u00edpico de un gancho podr\u00eda ser as\u00ed (en PHP):<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>add_action( 'wp_footer', 'add_custom_text' );<br><br>function a\u00f1adir_texto_personalizado() {<br>    echo '<p>Esta es mi nota de pie de p\u00e1gina personalizada.<\/p>';<br>}<\/code><\/pre>\n\n\n\n<p>En este ejemplo:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>a\u00f1adir_acci\u00f3n<\/code> indica a WordPress que ejecute tu funci\u00f3n<\/li>\n\n\n\n<li><code>wp_footer<\/code> es el gancho (se activa antes del cierre <code>&lt;\/body&gt;<\/code> etiqueta)<\/li>\n\n\n\n<li><code>a\u00f1adir_texto_personalizado()<\/code> es la funci\u00f3n que genera el HTML personalizado<\/li>\n<\/ul>\n\n\n\n<p>Los filtros funcionan de forma similar, pero pasan y devuelven datos:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>add_filter( 'el_t\u00edtulo', 'modificar_t\u00edtulo_post' );<br><br>function modify_post_title( $title ) {<br>    return $\u00edtulo . ' | Webshore';<br>}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Lugares habituales de enganche<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Temas<\/strong>: A\u00f1ade c\u00f3digo personalizado en <code>funciones.php<\/code> o un plugin espec\u00edfico del sitio<\/li>\n\n\n\n<li><strong>Plugins<\/strong>: La mayor\u00eda de los plugins bien codificados ofrecen ganchos para ampliar o personalizar funciones<\/li>\n\n\n\n<li><strong>N\u00facleo de WordPress<\/strong>: Hay cientos de ganchos disponibles en todo el sistema<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Conclusi\u00f3n<\/h3>\n\n\n\n<p>Los ganchos son lo que hace que WordPress sea tan potente y extensible. Las acciones te permiten <em>haz algo<\/em>; los filtros te permiten <em>cambiar algo<\/em>. Juntos, son el pegamento detr\u00e1s de casi todas las personalizaciones avanzadas. No es necesario que los escribas t\u00fa mismo, pero saber que existen te ayudar\u00e1 a comprender c\u00f3mo funciona WordPress en realidad.<\/p>","protected":false},"excerpt":{"rendered":"<p>Funciones de WordPress que te permiten modificar o ampliar la funcionalidad del n\u00facleo sin cambiar los archivos del n\u00facleo.<\/p>","protected":false},"featured_media":0,"menu_order":0,"template":"","meta":{"_acf_changed":false,"_seopress_robots_primary_cat":"","_seopress_titles_title":"","_seopress_titles_desc":"","_seopress_robots_index":"","download_url":"","hosterType":"","is_child_theme":"","is_license":"","parent_theme":"","version":"","requires":"","tested":"","author":"","author_url":"","requires_php":"","download_id":"","user_id":"","license_key":"","status":"active","activation_limit":"","expiry_date":"","footnotes":""},"glossary_category":[226],"letter":[195],"class_list":["post-8887","glossary-term","type-glossary-term","status-publish","hentry","glossary_category-wordpress-ecosystem-tools","letter-h"],"acf":[],"_links":{"self":[{"href":"https:\/\/webshore.eu\/es\/wp-json\/wp\/v2\/glossary-term\/8887","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webshore.eu\/es\/wp-json\/wp\/v2\/glossary-term"}],"about":[{"href":"https:\/\/webshore.eu\/es\/wp-json\/wp\/v2\/types\/glossary-term"}],"version-history":[{"count":0,"href":"https:\/\/webshore.eu\/es\/wp-json\/wp\/v2\/glossary-term\/8887\/revisions"}],"wp:attachment":[{"href":"https:\/\/webshore.eu\/es\/wp-json\/wp\/v2\/media?parent=8887"}],"wp:term":[{"taxonomy":"glossary_category","embeddable":true,"href":"https:\/\/webshore.eu\/es\/wp-json\/wp\/v2\/glossary_category?post=8887"},{"taxonomy":"letter","embeddable":true,"href":"https:\/\/webshore.eu\/es\/wp-json\/wp\/v2\/letter?post=8887"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}