Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
Copa WPB
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Qué es: Filtrar

Nota editorial: Ganamos una comisión de los enlaces de socios en WPBeginner. Las comisiones no afectan a las opiniones o evaluaciones de nuestros editores. Más información sobre Proceso editorial.

En el desarrollo de WordPress, un filtro se puede utilizar para cambiar o ampliar la funcionalidad de WordPress. Lo hace tomando algunos datos proporcionados por WordPress, cambiándolos por otros y devolviéndolos.

Los filtros son una de las grandes características que hacen que WordPress sea tan personalizable. Son piezas de código PHP que se ‘enganchan’ a un evento de WordPress. Cuando se activa el evento, el filtro se aplicará a la salida de datos generada por el gancho de evento.

Los desarrolladores de plugins y temas los utilizan mucho. Sin embargo, si no eres desarrollador, puedes pegar fragmentos de código de la web para añadir nuevas características a tu sitio web. Muchos de ellos incluyen filtros.

What Is Filter in WordPress?

¿Qué es un filtro en WordPress?

Un filtro modificará el comportamiento por defecto de una función específica en su sitio web WordPress. Para ello, manipula los datos que recibe y los devuelve a WordPress antes de que se muestren en el navegador / explorador.

Por ejemplo, los filtros pueden utilizarse para truncar texto, cambiar el formato del contenido, enlazar entradas, modificar bloques en una página y cambiar opciones recuperadas de la base de datos. También pueden cambiar la longitud de un extracto, colocar entradas relacionadas debajo del contenido principal o cambiar un precio en WooCommerce.

Los filtros se añaden mediante la función add_filter(). WordPress dispone de varias funciones que permiten utilizar acciones, pero estas son las que se utilizan con más frecuencia:

  • add_filter(): adjunta una función a un gancho.
  • remove_filter(): elimina una función adjunta a un gancho de filtro especificado.
  • doing_filter(): detecta cualquier filtro que se esté ejecutando en ese momento
  • has_filter(): comprueba si se ha registrado un filtro

Los filtros son utilizados por los desarrolladores de plugins y temas para añadir funcionalidad extra a WordPress. También puede utilizar filtros para personalizar su tema añadiendo fragmentos de código de tutoriales en línea.

Nota: Si es usted principiante, le recomendamos encarecidamente que no edite ningún archivo de WordPress. Solo los usuarios experimentados que se sientan cómodos editando el archivo functions. php y tengan algún conocimiento de PHP deberían intentar esto.

Los principiantes deberían utilizar un plugin para llevar a cabo la tarea que desean realizar o consultar a un profesional para que edite el código por ellos.

Antes de editar cualquier código en su sitio WordPress le recomendamos que haga una copia de seguridad de su sitio web en caso de un error de codificación. Si no tienes un plugin de copia de seguridad, entonces asegúrate de leer nuestro artículo donde comparamos los mejores plugins de copia de seguridad para WordPress.

También le recomendamos que no añada el código directamente a los archivos del tema, o perderá sus personalizaciones la próxima vez que actualice el tema.

En su lugar, debería utilizar un plugin de fragmentos de código para añadir código personalizado en WordPress, crear un plugin específico para el sitio o crear un tema hijo y modificarlo en lugar del tema padre.

Consulte nuestra guía sobre cómo actualizar un tema de WordPress sin perder la personalización.

¿Cuál es la diferencia entre ganchos, acciones y filtros?

Para entender mejor los filtros en WordPress, es útil ver cómo se relacionan con otros dos términos, ganchos y acciones. Entender estos tres términos juntos hará que el término ‘filtro’ sea un poco más fácil de entender.

Los ganchos son la base del desarrollo de plugins y temas para WordPress. Son lugares donde los desarrolladores pueden ‘enganchar’ su código personalizado en WordPress en lugares específicos y cambiar el funcionamiento de WordPress sin editar los archivos del núcleo.

Hay dos tipos de ganchos.

  • Los ganchos de filtro te permiten modificar algo. Interceptan datos que están siendo procesados y te permiten modificarlos, para luego devolverlos. Se utilizan para filtrar la salida cuando se envía a una base de datos o al navegador / explorador de un usuario.
  • Los ganchos deacción te permiten hacer algo. Te permiten añadir funcionalidad extra y se ejecutan cuando se activa un tema o plugin, o cuando se publica una entrada. Una vez realizada la acción, no necesitan pasar ninguna información de vuelta.

Estos ganchos de acción y filtro son la base del funcionamiento del núcleo, temas y plugins de WordPress. Trabajan juntos para permitir a los desarrolladores una gran flexibilidad para modificar los eventos, filtros y acciones por defecto de WordPress.

Los desarrolladores también pueden crear sus propias acciones y filtros personalizados para que otros desarrolladores puedan ampliar sus plugins o temas.

Ejemplos de filtros de WordPress

¿Qué aspecto tiene un filtro? He aquí algunos ejemplos.

Digamos que queremos mostrar un icono de imagen cuando se muestra una entrada que pertenece a una categoría en particular. En este escenario, creamos una función que comprueba si una entrada está en esa categoría en particular. Si lo está, entonces muestra la imagen.

A continuación, enganchamos esa función al evento_content. Ahora cada vez que el evento the_content tiene lugar, nuestra función se activa automáticamente para filtrar la salida del evento the_content.

// First we hook our own function with the_content event
add_filter( 'the_content', 'wpb_content_filter' );
 
// Now we define what our function would do.
// In this example it displays an image if a post is in news category.
function wpb_content_filter( $content ) {
    if ( in_category('news') )
        $content = sprintf('<img class="news-icon" src="%s/images/news_icon.png" alt="News icon" title="" />%s', get_bloginfo( 'stylesheet_directory' ), $content);
 
    // Returns the content.
    return $content;
}

He aquí otro ejemplo de uso de un filtro de WordPress.

Este código de ejemplo añade una función wpb_custom_excerpt al filtro get_the_excerpt.

function wpb_custom_excerpt( $output ) {
  if ( has_excerpt() && ! is_attachment() ) {
    $output .= wpb_continue_reading_link();
  }
  return $output;
}
add_filter( 'get_the_excerpt', 'wpb_custom_excerpt' );

Puedes aprender más estudiando nuestras guías de WordPress que utilizan filtros. Por ejemplo, aquí tienes algunas guías que te muestran cómo conseguir algo práctico utilizando los filtros de WordPress:

WordPress tiene muchos filtros predefinidos que permiten a los desarrolladores añadir su propio código en puntos específicos del núcleo de WordPress. La API de plugins de WordPress proporciona una extensa lista de ganchos de filtro que están disponibles.

Esperamos que este artículo le haya ayudado a aprender más acerca de los filtros en WordPress. También puedes consultar nuestra lista de lecturas adicionales a continuación para ver artículos relacionados con consejos, trucos e ideas útiles para WordPress.

Si te ha gustado esta guía, suscríbete a nuestro canal de YouTube para ver nuestros tutoriales en vídeo sobre WordPress. También puedes encontrarnos en Twitter y Facebook.

Lecturas adicionales

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

El último kit de herramientas de WordPress

Obtenga acceso GRATUITO a nuestro kit de herramientas - una colección de productos y recursos relacionados con WordPress que todo profesional debería tener!