WordPress获取文章顶级分类目录信息

因为 WordPress 数据库结构设计的原因,有时候就级别多一点就需要循环了获取,如果分类目录层级多了,要想…

因为 WordPress 数据库结构设计的原因,有时候就级别多一点就需要循环了获取,如果分类目录层级多了,要想获取到顶级目录的信息还真的需要折腾一下,而且子凡也查询过 WordPress 并没有提供相关的函数来获取,所有自己干脆自己来封装了一个 WordPress 获取文章所在目录的顶级目录信息。

wordpress developer 开发

WordPress 获取分类目录的函数可以分为两个大类,一个是根据文章 ID 来获取当前文章的分类目录信息 get_the_category(),一个是根据分类目录 ID 类获取分类目录信息 get_category()。利用这两个函数就可以实现子凡我想要的功能了,代码如下:

1
2
3
4
5
6
7
8
9
10
11
/* 获取顶级分类目录信息
 * term_id name slug description
 * cat_ID category_description cat_name
 */
function fanly_basic_get_category_root( $pid, $meta='term_id' ){
	$cats = get_the_category($pid)[0] ?? '';
	while(@$cats->category_parent){ //有父分类时循环
		$cats = get_category(@$cats->category_parent);
	}
	return $cats->$meta ?? '';
}

其实从优化的角度来说,文章目录的 URL 深度太长了不好,而对于 WordPress 使用了 category 来做固定链接时,分类目录用来分类的嵌入尽可能的不要太多层,当然子凡个人人为使用一层就已经足够,如果使用到二级目录那么二次开发 WordPress 来固定只有一级目录。

类别:WordPress优化

本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。

评论 (0)COMMENT

登录 账号发表你的看法,还没有账号?立即免费 注册