wordpress获取当前tag页面的标签ID、别名

无评论

作者照片

By 霜天

在wordpress主题开发中,想在标签文章列表页面获取当前标签的ID、别名怎么办?可以通过标签名称使用get_term_by()函数来实现,get_term_by()函数可以返回分类或标签的名称、别名和ID等信息。

1
2
3
4
5
if(is_tag()){
	$tagName = single_tag_title(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\',false);
	$tagObject = get_term_by(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'name\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\',$tagName,\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'post_tag\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\');
	$tagID = $tagObject->term_id;
}

代码意思:在标签页面,选择获取当前标签页面的标签名称,使用该标签名称通过get_term_by()函数返回一个数组值,然后就可以获取数组中当前标签的ID了。

扩展:

也可以写成函数放在主题的functions.php文件(以下代码二选一)

代码一:

1
2
3
4
5
6
7
8
9
function get_tag_id() {
	$tagname = single_tag_title(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\',false);
	$tag = get_term_by(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'name\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', $tagname, \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'post_tag\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\');
	if($tag){
		return $tag->term_id;
	}else{
		return 0;
	}
}

代码二:

1
2
3
4
5
6
7
function get_tag_id() {
 $current_tag = single_tag_title(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', false);
 $tags = get_tags();
 foreach($tags as $tag) {
  if($tag->name == $current_tag) return $tag->term_id;
 }
}

调用代码:

1
<?php echo get_tag_id();?>

发表评论