2019年6月6日星期四

WordPress如何排除指定分类/文章页面在站内搜索结果?

原文链接:https://www.chenweiliang.com/cwl-1057.html



本文是《WordPress建站教程》系列文章的第 20 部分,该系列共包含以下 20 个部分:

WordPress如何排除指定分类/文章页面在站内搜索结果?


有些时候,我们可能不想让某分类、文章或页面,出现在WordPress站内搜索结果中。


因此我们可以使用filter(过滤器),来过滤掉某些文章或网页。


WordPress如何排除指定分类/文章页面在站内搜索结果?


WordPress站内搜索排除指定文章或页面


// WordPress搜索结果排除指定文章或页面ID
function WordPress_Site_search_filter_id($query)
if ( !$query->is_admin && $query->is_search)
$query->set('post__not_in', array(40,819));
//文章或者页面的ID

return $query;

add_filter('pre_get_posts','WordPress_Site_search_filter_id');

  • 请注意:需要修改第4行文章或页面ID。

WordPress站内搜索排除某些类别的文章


// WordPress搜索结果排除某分类的文章
function WordPress_Site_search_filter_category( $query)
if ( !$query->is_admin && $query->is_search)
$query->set('cat','-15,-57');
//分类的ID,前面的减号表示排除;如果直接写ID,则表示只在该分类ID中搜索

return $query;

add_filter('pre_get_posts','WordPress_Site_search_filter_category');

  • 请注意:修改ID、查看代码注释说明。

WordPress站内搜索排除所有页面


这非常实用,建议添加 ▼


// 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');

Search Exclude插件不让某篇文章页面显示在站内搜索结果


WordPress本来不具备站内搜索排除某篇文章页面的功能。


除了添加代码的方式以外,我们可通过安装WordPress插件来实现此功能。


Search Exclude插件允许你随时将特定文章排除在站内搜索结果中。


安装Search Exclude插件后,你将在文章编辑界面的右侧看到新功能 ▼


安装Search Exclude插件后,你将在文章编辑界面的右侧看到新功能 ▼


以下是安装WordPress插件的方法 ▼



WordPress站内搜索不显示指定的文章


只要选中这个“Exclude from Search Results”选项,该文章就不会再出现在网站的站内搜索结果中。


当你在WordPress前台站内搜索时,你会发现你找不到被排除的文章 ▼


当你在WordPress前台站内搜索时,你会发现你找不到被排除的文章


在Search Exclude插件的管理界面中,你可以查看所有已排除在站内搜索的文章或页面 ▼


在Search Exclude插件的管理界面中,你可以查看所有已排除在站内搜索的文章或页面


  • 并且,可以批量移除它们。



欢迎转载《WordPress如何排除指定分类/文章页面在站内搜索结果?
陈沩亮版权所有,转载请注明出处链接:https://www.chenweiliang.com/cwl-1057.html


网站地址:https://www.chenweiliang.com/



欲学更多秘技,请关注微信公众号:cwlboke

没有评论:

发表评论