Para limitar los resultados de búsqueda en WordPress a solamente publicaciones (posts) por defecto y tipos de contenido personalizado (CPT), puedes utilizar el gancho (hook) pre_get_posts
para modificar la consulta principal antes de que se ejecute. Aquí tienes un ejemplo de cómo hacerlo:
- Abre el archivo
functions.php
de tu tema activo (o crea un plugin si prefieres mantener esta funcionalidad separada de tu tema). - Agrega el siguiente código al archivo para modificar la consulta de búsqueda:
function limitar_resultados_de_busqueda($query) {
if (is_admin() || !$query->is_main_query()) {
return;
}
// Verifica si se está realizando una búsqueda
if ($query->is_search()) {
// Obtén los tipos de contenido que deseas incluir en los resultados de búsqueda
$tipos_de_contenido = array('post', 'tu_tipo_de_contenido_personalizado');
// Configura el parámetro 'post_type' de la consulta para limitar los resultados a esos tipos de contenido
$query->set('post_type', $tipos_de_contenido);
}
}
add_action('pre_get_posts', 'limitar_resultados_de_busqueda');
Asegúrate de reemplazar 'tu_tipo_de_contenido_personalizado'
con el nombre real de tu tipo de contenido personalizado. Este código verificará si la consulta es una búsqueda principal y luego establecerá el parámetro 'post_type'
para incluir solo los tipos de contenido que especifiques.
Después de agregar este código y guardar el archivo, WordPress limitará los resultados de búsqueda a publicaciones (posts) por defecto y tu tipo de contenido personalizado. Los resultados de búsqueda ya no deberían incluir páginas de carrito, páginas de pago u otros tipos de contenido no deseados.