0

我正在创建一个自定义 search.php,并想知道如何根据搜索结果的数量返回不同的语句。我想为三种情况中的每一种情况提供不同的陈述:

  1. 没有结果返回
  2. 返回一个结果
  3. 返回多个结果

因此,在第一个示例中,页面将返回 No results where returned。在第二个中:您对 X 的搜索返回了一个结果。在第三个中:您对 X 的搜索返回了 Y 结果。

好的,希望能解释我想要做什么。所以这是我到目前为止的代码:

<?php
global $wp_query;
$total_results = $wp_query->found_posts;
?>
Your search for <span class="style"><?php echo get_search_query(); ?></span> returned <span class="style"><?php echo $total_results; ?></span> results.

所以我可以打印出第三个选项,是否有一些条件可以与这个或任何其他代码一起使用来创建我上面提到的不同语句?

4

2 回答 2

1

假设这$total_results是您的计数;

if($total_results==1){
    echo 'message one';
    ?> or jump out of PHP and back in <?PHP
}elseif($total_results>1){
    echo 'message multiple';
}else{
    echo 'no results (or error if you did not trap seperately)';
}

我错过了什么吗?也可以看看switch()构造。

于 2012-09-14T18:32:34.297 回答
1

如果我理解正确,一个简单的 If/Else 块应该处理它:

if($total_results>1)
    echo 'more than one';
elseif($total_results==1)
    echo '1';
else
    echo '0';
于 2012-09-14T18:32:35.917 回答