根据POST_TYPE修改搜索结果

时间:2011-11-19 作者:php-b-grader

有没有一种简单的方法可以根据post\\u类型突出显示搜索结果?

我使用的是Job Manager插件,在执行网站搜索时,我只想在工作结果旁边添加一个注释,例如(Job)。

1 个回复
最合适的回答,由SO网友:Sagive 整理而成

我认为您可以使用if语句对其进行PHP处理。。像这样:

Say this is the loop.. (simple one i know):

<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

<?php 
    $post_type = get_post_type_object( get_post_type($post) );
    $post_type_name = $post_type->labels->singular_name

    if ($post_type_name == \'example\') {
    echo \'<div class="highlight searchResults">\';
    } else {
    echo \'<div>\';
?>

<h3><?php the_title(); ?></h3>
<p><?php the_excerpt(); ?></p>
</div>

<?php endwhile; else: ?>
<p><?php _e(\'Sorry, no posts matched your criteria.\'); ?></p>
<?php endif; ?>

别忘了用你在搜索结果中检查的自定义帖子类型的单数名称更改“示例”。。。

希望这有帮助:)

结束

相关推荐

Add_Filters()和Apply_Filter()有什么作用?

我有点困惑,为什么这不起作用-尽管必须说,我不太确定是什么apply_filters() 和add_filter 正在做,所以任何一般性的提示都会很好!我想要一个查询,在一个帖子页面上显示之前的五篇帖子。我正在发送当前帖子的日期,并希望应用一个过滤器,过滤出早于此的帖子。function sw_filter_posts_before( $where = \'\', $date) { $where .= \" AND post_date < \'\" . $date . \"