在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();?> |