WordPress 搜索结果排除特定文章、页面和分类,或只显示特定分类内容

本文介绍了在WordPress中通过代码控制搜索结果页内容的方法,包括排除特定ID的文章或页面、排除特定分类下的所有文章,以及从搜索结果中移除所有页面。这些代码片段可用于自定义搜索结果,避免显示不希望被用户搜索到的内容。

WordPress基础教程
阅读时间: 11 分钟
最后更新时间:2025年11月13日

默认的 WordPress 搜索机制得出的结果页面,会包含站内的页面、文章等。最近在重新整理周良博客,会需要对搜索结果页呈现的内容做一些控制,排除我不希望被读者搜索到的内容。

站在效率的角度,我不太喜欢重复去制造轮子,就网寻了一些代码,本文纯属是给自己的备忘录。

排除特定 ID 的文章或者页面

//搜索结果排除特定 ID 的文章或页面
function Bing_search_filter_id($query) {
    if ( !$query->is_admin && $query->is_search) {
        $query->set('post__not_in', array(13,14));//需要排除的文章、页面 ID
    }
    return $query;
}
add_filter('pre_get_posts','Bing_search_filter_id');

排除特定分类下所有文章

//搜索结果排除特定分类下所有文章
function Bing_search_filter_category( $query) {
    if ( !$query->is_admin && $query->is_search) {
        $query->set('cat','-11,-13'); //分类的 ID,加负号表示排除;直接写ID,则表示只在该 ID 中搜索
    }
    return $query;
}
add_filter('pre_get_posts','Bing_search_filter_category');

搜索结果排除所有页面

//搜索结果排除所有页面
function search_filter_page($query) {
    if ($query->is_search) {
        $query->set('post_type', 'post');
    }
    return $query;
}
add_filter('pre_get_posts','search_filter_page');

这篇文章有用吗?

点击星号为它评分!

平均评分 0 / 5. 投票数: 0

到目前为止还没有投票!成为第一位评论此文章。

曾凤祥

曾凤祥

技术负责人
小兽WordPress凭借15年的WordPress企业网站开发经验,坚持以“为企业而生的WordPress服务”为宗旨,累计为10万多家客户提供高品质WordPress建站服务,得到了客户的一致好评。我们一直用心对待每一个客户,我们坚信:“善待客户,将会成为终身客户”。小兽WordPress能坚持多年,是因为我们一直诚信。

相关文章

如何让线上业务更上一层楼

还没有WordPress网站

还没有WordPress网站

不管你从事什么行业,WordPress都会为你提供一个专业的主题模板。在WordPress市场上有成千上万的免费主题,适合很多中小企业。

查看所有模板
已经有WordPress网站

已经有WordPress网站

小兽WordPress诚邀你一起学习WordPress,愿与各方携手升级改善您的WordPress网站,一起交流网站加速,网站优化等问题。

马上交个朋友
微信联系
chat 扫码联系
模板建站
挑选模板
网站定制
免费诊断
咨询热线
咨询热线

189-0733-7671

返回顶部