- 资源介绍
- 更新记录
- 安装教程
给 WordPress 添加分类置顶功能并在主题前端调取置顶分类
WordPress 有一个的文章置顶功能,可以让我们把指定的文章放在页面最前面。在做一个WordPress主题开发的时候,我们遇到了需要把一个分类的子分类放在父级分类最前面的功能,和文章置顶功能有点类似。
WordPress 默认是没有分类置顶功能的,是否可以通过代码为添加分类置顶的功能到 WordPress 中呢?我们研究了一下,发现是可以的,实现方法也不麻烦。
给 WordPress 添加分类置顶功能
首先,我们知道,WordPress 的置顶文章信息是存储在 wp_options 数据表中的,通过get_option(\'sticky_posts\') 函数获取置顶文章。
我们只需要想办法给分类添加一个置顶文章的设置,然后在保存分类的时候把这个设置保存在数据中即可。如下图,下面的 “Mark this cateogry as featured” 是一个自定义分类法字段,实现方法有很多,在这里就不在多说了。

我们需要在保存分类法的同时,保存分类置顶信息到 wp_options 数据库中。把保存置顶信息的处理流程挂载到 edited_category 动作钩子上面即可实现。
add_action( \’edited_category\’, function ( $term_id, $tt_id )
{
// 获取分类置顶设置信息
$is_featured = isset( $_POST[ \’_featured\’ ] );
// 获取已保存的分类置顶信息
$featured_term = get_option( \’featured_term\’, [] );
// 如果当前分类设置了置顶,把当前分类 ID 添加到分类置顶设置中
if ( $is_featured && $is_featured == \’yes\’ ) {
$featured_term [] = $term_id;
} else {
// 如果当前分类没有设置置顶,并且分类置顶设置中有当前分类(之前添加过,现在取消了),
// 则从分类置顶设置中移除当前分类
$featured_index = array_search( $term_id, $featured_term );
if ( $featured_index !== false ) {
unset( $featured_term[ $featured_index ] );
}
}
// 去重,保存更新后的数据到分类置顶设置中
update_option( \’featured_term\’, array_unique( $featured_term ) );
}, 10, 2 );
在前端调用置顶的分类
有了分类置顶的信息,获取置顶分类就简单多了,直接通过下面的代码调用即可,如果需要排除置顶的分类,把下面代码中的 include 换成 exclude 即可。
$featured_terms = get_option(\’featured_term\’);
$terms = get_terms( [
\’taxonomy\’ => \’category\’,
\’include\’ => $featured_terms,
] );
不只是分类目录,标签、自定义分类法都可以通过类似的方法添加置顶功能,只需要把置顶数据保存到适当的设置中即可,WordPress Hook 系统 是一个非常灵活强大的功能,恰当的利用,我们可以为 WordPress 增加各种个样的功能来满足我们的需求。
猜你喜欢
-
WordPress的tags标签自定义样式
2021-04-25 -
WordPress REST API 内容注入
2021-04-26 -
GameWorld – 游戏装备商店WooCommerce主题
2021-04-24 -
AtoZ SEO Tools v2.6 – PHP搜索引擎优化神器
2021-04-25 -
get_category_link()函数
2021-04-26 -
详解网站SEO优化的优点
2021-04-24 -
wp_list_categories()函数
2021-04-26 -
领VIP大礼包
2021-04-26 -
CSDN免积分在线下载器2019 WIN专业系统工具箱
2021-04-25 -
WordPress主题:CorePress v2.6 果核剥壳站长开发
2021-04-24
-
PlayerX – 高达游戏竞技网站WordPres主题 – v1.8
2021-04-24 -
一个 Oblivion 游戏 WordPress主题
2021-04-22 -
WordPress两种方法实现上传媒体图片文件自动重命名
2021-04-26 -
Ripro主题弹窗公告美化
2021-04-25 -
WordPress后台如何禁止编辑主题和插件
2021-04-25 -
Black Friday – 黑色星期五/网络促销模式WordPress商店模板 – v1.7
2021-04-24 -
get_the_posts_pagination()函数
2021-04-26 -
get_cat_name()函数
2021-04-26 -
FLOX – 个人招聘展示简历网站WordPress模板
2021-04-21 -
WordPress技巧:获取统计文章内图片数量
2021-04-25
猜你在找
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 大资源
- 2021-04-26Hi,初次和大家见面了,请多关照!
最后编辑:2021-04-26

