我需要在Wordpress短代码函数中通过它的名称获取指定标记的永久链接,短代码如下所示:
function shortcode_hashtag($attr, $content){
$tagId = get_term_by('name', do_shortcode($content), 'tag');
return '<a href="'.get_tag_link($tagId).'" title="">'.do_shortcode($content).'</a>';
}
add_shortcode('hash', 'shortcode_hashtag');
输出链接是帖子本身的链接,而不是标签永久链接
答案 0 :(得分:1)
您使用do_shortcode()似乎是错误的。
试试这个吗?
function shortcode_hashtag($atts, $content) {
$tag = get_term_by('name', $content, 'post_tag');
$tag_id = $tag->term_id;
$tag_permalink = get_tag_link($tag_id);
return '<a href="' . $tag_permalink . '">' . $content . '</a>';
}
add_shortcode( 'hash', 'shortcode_hashtag' );