Filtrar post types en la búsqueda de WordPress

A veces necesitamos filtrar en el buscador que tipos de posts deben aparecer, con esta sencilla función puedes filtrar cada tipo.

En el ejemplo utilizamos el filtro de ‘pre_get_posts’ que se ejecuta antes de cualquier petición de query en WordPress, lo único que hay que haces es comprobar si estamos en los resultados de búsqueda y en ese caso reemplazar la key «post_type» en el query actual y pasar un array (o string con un post type único) con los tipos de post que queremos que solo aparezcan, y listo.

function cabans_pre_get_posts_filters( $query ) {
    
    if ( $query->is_search && !is_admin() ) {
        $query->set( 'post_type', array( 'post', 'product' ) );
    }
    
    return $query;
    
}
add_filter( 'pre_get_posts', 'cabans_pre_get_posts_filters' );Lenguaje del código: PHP (php)

Un snippet rápido que nos puede ayudar en más de un proyecto.


Comentarios

Deja una respuesta

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