Muestra solo posts en la búsqueda de WordPress

luisazu Seguir

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
24 Ene 2014
Mensajes
58
Hola a todos, Sabéis como puedo excluir las páginas en los resultados de búsqueda, para que solo salgan los posts?

Un saludo.
 

ramonjosegn

Sigma
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
14 Feb 2010
Mensajes
70.587
Hay algunos plugins que permiten búsquedas personalizadas, intenta hacer una búsqueda con
"custom search" en el repertorio de Wordpress
 

Galbatorix

Dseda
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
13 May 2013
Mensajes
1.231
pon el siguiente codigo en tu archivo functions.php

PHP:
<?php
function buscarSoloPosts($query) {
    if ($query->is_search) {
        $query->set('post_type', 'post');
    }
    return $query;
}

add_filter('pre_get_posts', 'buscarSoloPosts');
?>
 

luisazu

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
24 Ene 2014
Mensajes
58
Gracias chcios!

Hay algunos plugins que permiten búsquedas personalizadas, intenta hacer una búsqueda con
"custom search" en el repertorio de Wordpress

Prefiero no usar plugins para esto, estoy seguro que mediante una función se puede conseguir.

pon el siguiente codigo en tu archivo functions.php

PHP:
<?php
function buscarSoloPosts($query) {
    if ($query->is_search) {
        $query->set('post_type', 'post');
    }
    return $query;
}

add_filter('pre_get_posts', 'buscarSoloPosts');
?>

No me funciona, excluye también los posts :(

Un saludo
 

luisazu

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
24 Ene 2014
Mensajes
58
El código que te paso galbatorix funciona perfectamente en mi WP 3.8.1
Repasa por si tienes algo mal.

Estoy trabajando con CPT quizá sea eso?

Os dejo el bucle que tengo en la página search.php

PHP:
<?php if (have_posts()) : ?>
    <?php query_posts($query_string."&showposts=4"); ?>
    <?php while (have_posts()) : the_post();?>

He añadido a mis CPT

PHP:
'exclude_from_search' => false

pero tampoco funciona.

Un saludo
 

ramonjosegn

Sigma
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
14 Feb 2010
Mensajes
70.587
Con tantas adiciones que hacen los programadores en los themes, siempre hay que afinar un montón el código, por eso prefiero usar plugins, de hecho con los plugins siempre puedes hacer los reportes al autor para que vayan afinando....
 

luisazu

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
24 Ene 2014
Mensajes
58
Con tantas adiciones que hacen los programadores en los themes, siempre hay que afinar un montón el código, por eso prefiero usar plugins, de hecho con los plugins siempre puedes hacer los reportes al autor para que vayan afinando....

El theme está hecho 100% por mí, por eso prefiero intentar solucionarlo con algo de código que añadiendo mas plugins ;)

Un saludo
 

ramonjosegn

Sigma
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
14 Feb 2010
Mensajes
70.587
El theme está hecho 100% por mí, por eso prefiero intentar solucionarlo con algo de código que añadiendo mas plugins ;)

Un saludo

Ah, bueno si conoces el theme claro que sí es mejor, ¿y puedo verlo? ¿lo vas a regalar?
 

luisazu

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
24 Ene 2014
Mensajes
58
Estoy desarrollándolo aún :(

He llegado a otra solución, excluyendo por ID de página pero me parece mucho más cómoda la solución de arriba, sabéis porque no me funciona? esta mal el loop de search.php ?
 

Galbatorix

Dseda
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
13 May 2013
Mensajes
1.231
habria que revisar tu codigo

fijate donde pones tu codigo de busqueda y que no interfiera con otras consultas. revisa que no estes dentro de otro loop. revisa que no haya inmediatamente antes otro wp_query o alguna funcion que haga uso de wp_query.

considera la necesidad de resetear tus consultas si la estructura de tus taxonomias es muy compleja.

recuerda que la visualizacon de tags y categorias tambien son busquedas.

te dejo la referencia a wp_query en el codex: Class Reference/WP Query « WordPress Codex

revisa con cuidado esta funcion: Function Reference/wp reset query « WordPress Codex
 
Arriba