Instalar WordPress

Guía de Instalación

Optimizar WordPress

Optimización y Velocidad

Seguridad de WordPress

Guía de Protección

Incluir Custom Post Types en Resultados de Búsqueda de WordPress

Incluir Custom Post Types en Resultados de Búsqueda de WordPress

El sistema de gestión de WordPress de forma predeterminada incluye un buscador interno, que te permite realizar búsquedas en todas las páginas y entradas existentes en tu sitio web. El problema surge cuando tienes una entrada personalizada (custom post), porque no aparecerá ningún resultado de ella. Por eso, hoy te explicamos cómo incluir custom post types en los resultados de búsqueda de WordPress.

Resultados de Búsqueda de WordPress

El buscador interno de WordPress es una herramienta que hace un buen trabajo para obtener resultados de todo el contenido estándar de las páginas y entradas de tu sitio web.

La página de resultados de búsqueda contiene cualquier contenido que contiene la palabra o juego de palabras que insertas en el formulario de búsqueda. El buscador de WordPress es relativamente básico, porque funciona de forma plana, mediante un consulta normal a la base de datos.

No obstante, el buscador de WordPress es bastante útil en la mayoría de los casos, y le permite a los usuarios encontrar el contenido que buscan de forma rápida y efectiva. Pero si estás usando una entrada personalizada (custom post) y quieres que también su contenido aparezca en los resultados, también es posible.

Incluir Custom Post Types en el Buscador

Es imposible que WordPress pueda predecir el nombre de las entradas personalizadas que usas en tu sitio web, por eso necesitas realizar una pequeña alteración en la consulta de los resultados de búsqueda.

function wpbod_cpt_busqueda( $query ) {
    if ( $query->is_search ) {
        $query->set( 'post_type', array( 'post', 'page', 'productos' ) );
    }
    return $query;
}
add_filter( 'pre_get_posts', 'wpbod_cpt_busqueda' );

En este código creamos una función que verifica si la consulta que se está realizando a la base de datos es de una búsqueda, después establece el tipo de entradas que debe incluir en los resultados de búsqueda de WordPress.

Al final devuelve la variable de la consulta completa que se debe realizar a la base, usando el hook pre_get_posts que llama a la función justo antes de la ejecución de la consulta.

Para utilizar este código puedes, o pegarlo directamente en el archivo functions.php de tu tema actual, o pegarlo en un plugin personalizado dedicado especialmente a tu sitio web.

Si lo que buscas es quitar la página de búsqueda, puedes visitar el tutorial anterior de cómo deshabilitar el buscador interno de WordPress.

Esto es todo. Te invitamos a seguir WPBody en Facebook, para obtener los tutoriales para mejorar la seguridad y optimizar WordPress.

Deja un comentario

Si continúas utilizando este sitio significa que aceptas el uso de cookies. más información

Los ajustes de cookies de esta web están configurados para "permitir cookies" y así ofrecerte la mejor experiencia de navegación posible. Si sigues utilizando esta web sin cambiar tus ajustes de cookies o haces clic en "Aceptar" estarás dando tu consentimiento a esto.

Cerrar