阿里云服务器

大家都知道WordPress网站默认搜索功能,搜索全站文章,包含页面。

WordPress企业网站中,如果只让客户搜索产品或者新闻,就需要排除其他分类的文章和页面。

操作方法如下:

在search.php页面中加入下面代码:

<?php if( is_search() )  :$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;query_posts("s=$s&paged=$paged&cat=1,2,3");endif; ?>

代码中的数字代表的是文章分类id,根据自己的要求进行设置即可。

查看分类id的方法可以看前面发布的文章:wordpress 获取文章,页面和分类id的方法

另外一种方法也给大家分享一下:

一般的搜索代码如下:

<form action="<?php bloginfo('home'); ?>" method="get">
         <input type="text" value="<?php echo wp_specialchars($s, 1); ?>" name="s" id="s" />
        <input type="submit" id="searchsubmit" value="Search" />
</form>

在上面代码中加入一个隐藏域,进行限制

<form action="<?php bloginfo('home'); ?>" method="get">
        <input type="text" value="<?php echo wp_specialchars($s, 1); ?>" name="s" id="s" />
        <input type="hidden" name="cat" value="1" />
        <input type="submit" id="searchsubmit" value="Search" />
</form>

代码中value="1",可以改成自己网站中的分类ID,比如产品分类id或者新闻分类id。   

相关阅读:
  • wordpress搜索自定义字段的方法
  • wordpress增强搜索功能 可以通过分类、标签、用户搜索
  • WordPress调用指定分类子分类的数据和文章列表
  • WordPress无用数据清理插件:WPDBSpringClear
  • 非插件设置wordpress只搜索文章标题的方法
  • wordpress只搜索指定分类文章的方法
  • 非插件让wordpress搜索文章标题的方法
  • 设置WordPress一级分类不显示二级分类文章的方法
  • wordpress下拉菜单设置方法
  • WordPress页面添加自定义摘要功能