分享各种网络资源
是我乃至整个互联网的精髓所在
 您目前所在位置: 站点首页 » WordPress » 代码 » WordPress分类搜索的另外一种方法
+

WordPress分类搜索的另外一种方法

WordPress分类搜索的另外一种方法-BanYuner

WordPress分类搜索的另外一种方法

前段时间,我在这博客发了有关WordPress分类搜索的方法,详见: 添加WordPress搜索特定分类下的文章功能,那么这个功能很大一定程度上面帮助到了大家,毕竟有针对性的话,效率就会高不少吧。

那么同样的,今天在解决相关问题的时候,再次了解到了一个方法,这里也直接给大家送上,这个方法可能来的没有露兜博客那么简单,但是也不失为一种好方法。代码部分来自tree workshop博客:

改造自带搜索框

下面是第一部分相关代码

<form role="search" method="get" class="search-form" action="<?php echo home_url(); ?>">
<label>
<span class="screen-reader-text">Search:</span>
<input type="search" class="search-field" placeholder="Search&hellip;" value="" name="s" title="Search:" />
</label>
<input type="submit" class="search-submit" value="Search" />
</form>

这部分代码主要是作为铺垫,为了后面的嗲吗能够实现效果,代码的头和尾的部分是很多博客都有的,所以大家根据自己的情况来做修改。

下面是第二部分代码

<?php
$args = array(
'hide_empty'               => 0
);
$categories = get_categories( $args );
//上面的代码获取所有分类
?>
<form role="search" method="get" class="search-form" action="<?php echo home_url(); ?>">
<label>
<span class="category-text">Category:</span>
<select name="cat">
<option value="">All Category</option>
<?php foreach($categories as $category){ ?>
<option value="<?php echo $category->term_id; ?>"><?php echo $category->name; ?></option>
<?php } ?>
</select>
</lable>
<label>
<span class="screen-text">Search:</span>
<input type="search" class="search-field" placeholder="Search&hellip;" value="" name="s" title="Search:" />
</label>
<input type="submit" class="search-submit" value="Search" />
</form>

那么这个代码部分就是修改的整个框架部分,包括列表部分以及输入框部分。

处理搜索条件

两个部分已经处理完毕之后,我们需要的就是添加处理函数,要不然仅仅有上面的是没有效果的:

function return_only_selected_category() {
if ( isset($_REQUEST['s']) && isset($_REQUEST['cat']) ){ //若为搜索页面,且有cat值传入
global $wp_query;
$desired_cat = $_REQUEST['cat']; //要搜索的分类
$excluded = get_categories("hide_empty=false&exclude={$desired_cat}"); //要排除的分类
$wp_query->query_vars['cat'] = "-{$excluded}"; //除了要搜索的,其它都排除
//还可添加其它条件,比如要搜索的文章类型$wp_query->query_vars['post_type'] ="product";
}
}
add_filter('pre_get_posts', 'return_only_selected_category');

上面的代码放入functions.php文件中即可。

关注我们 打赏 分享此文
微信扫码,关注我们
扫码,支持我
WordPress分类搜索的另外一种方法
支付宝(点击图片切换)
扫码,支持我
WordPress分类搜索的另外一种方法
微信(点击图片切换)
扫码,手机看
WordPress分类搜索的另外一种方法
匿名

个人评价:┃草根博主┃站点无技术含量┃文章内容不够吸引人┃转载内容随处可见┃资源均来自网络┃分享是我的宗旨,也是这个站点存在意义,分享的东西你现在可能不需要,但是我相信只要在某个时间你需要的时候能在这里找到,那么我就是成功的

相关推荐

  • WordPress纯代码实现文章AJAX点赞

    WordPress纯代码实现文章AJAX点赞

    这个功能其实在很多主题中都集成进去了,DUX默认的主题里面也是有这个功能的,但是我将其删除了,之后换上了评星插件了,评 ...

    点击查看
  • WordPress页面(page)添加标签和分类功能

    WordPress页面(page)添加标签和分类功能

    WordPress页面(page)添加标签和分类功能 文章分类目录和标签功能是WordPress自带的功能,但是很多时候,喜欢使用页面的用 ...

    点击查看
  • 如何在WordPress文章中插入视频

    如何在WordPress文章中插入视频

    如何在WordPress文章中插入视频 现在很多站点都是做视频站点的,同时也有很多视频站点都是使用的CK播放器,如果你已经使用了 ...

    点击查看
WordPress分类搜索的另外一种方法
4 + 9 =
  • 昵称 (必填)  
  • 邮箱 (必填)
  • 网址 (选填)