Pesquisa de tag condicional sem resultados

3

Existe uma maneira de fazer uma tag condicional que testa se é search-no-results page?

Eu sei que existe uma função para verificar se a página is_search() :

if(is_search()){
    echo "search page";
}

Mas não encontrei uma maneira de verificar se há pesquisa sem resultados e percebi que o WordPress oferece uma classe de corpo com search-no-results para essa página.

    
por Erez Lieberman 22.12.2014 / 13:35

2 respostas

7

Não há tags condicionais para nenhum resultado em uma página de pesquisa, mas você pode criar uma para você mesmo.

Você basicamente precisa verificar o valor de $wp_query->found_posts , se for 0 , retornar false , qualquer outro valor, retornar true

function is_search_has_results() {
    return 0 != $GLOBALS['wp_query']->found_posts;
}
    
por Pieter Goosen 22.12.2014 / 13:51
1

Na verdade, deveria ser assim.

function is_search_has_results() {
  if ( is_search()) {
    global $wp_query;
    $result = ( 0 != $wp_query->found_posts ) ? true : false;
    return $result;
  }
}
    
por Vadim Ilyin 26.02.2017 / 20:41