首页 论坛 WordPress搜索结果如何排除指定页面和分类
帖子详情

WordPress做了搜索功能之后,用户搜索关键词后,会将网站中所有包含关键词的内容展示出来。但有时我们不想让某些分类下的文章或者独立页面被搜索到,就需要在代码里将WordPress搜索结果排除指定页面和分类

Wordpress搜索

各个功能的代码如下:

WordPress搜索结果排除指定分类

function Bing_search_filter_category( $query) {
if ( !$query->is_admin && $query->is_search) {
$query->set('cat','-1,-2'); //分类的ID,前面加负号表示排除;如果直接写ID,则表示只在该ID中搜索
}
return $query;
}
add_filter('pre_get_posts','Bing_search_filter_category');

WordPress搜索结果排除指定页面

function search_filter_page($query) {
if ($query->is_search) {
$query->set('post_type', 'post');
}
return $query;
}
add_filter('pre_get_posts','search_filter_page');

WordPress搜索结果排除指定ID的文章或page页面

function Bing_search_filter_id($query) {
if ( !$query->is_admin && $query->is_search) {
$query->set('post__not_in', array(1,5));//文章或者页面的ID
}
return $query;
}
add_filter('pre_get_posts','Bing_search_filter_id');

使用方法:

在WordPress仿站时,将上述的代码复制粘贴到模板函数functions.php中,然后保存即可实现对应的功能。

版权:言论仅代表个人观点,不代表官方立场。转载请注明出处:https://www.52diyhome.com/forum/65631.html

发表评论
暂无评论
  • 0 +

    访问总数

  • 0 +

    会员总数

  • 0 +

    资源总数

  • 0 +

    今日发布

  • 0 +

    本周发布

  • 0 +

    运行天数

资源在于分享,创作来源想象