WordPress pre_get_posts – Filtrando Resultados

La documentación de WordPress indica que no debemos usar funciones como get_posts para modificar los queries que la plataforma lleva a cabo.

La alternativa recomendada es usar el filtro pre_get_posts, que como su nombre sugiere se ejecuta antes de que la consulta principal tenga efecto.

En este caso vamos a crear una clase llamada PreGetPosts para filtrar los resultados de la consulta principal y presentar solamente Links –post-format-link– y Status –post-format-status–.

Para ello debemos considerar que el filtro a establecer es de tipo taxonomía, es decir, la variable que tenemos que cambiar es tax_query.

Este GIST de GitHub ya genera los resultados deseados. Lo único que hay que hacer es incluirlo dentro de nuestro archivo functions.php.

Al hacer esto, el archivo PHP que contiene la clase, crea una instancia de la clase PreGetPosts, con el valor 1, el cual establece la prioridad para nuestro filtro de WordPress.

En la línea final de nuestro archivo le indicamos a WordPress que en el método INIT debe invocar la función del mismo nombre en la instancia creada 2 líneas antes.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *