【发布时间】:2021-12-08 13:24:47
【问题描述】:
我已经使用 Elementor 创建了作者页面,并且正在显示链接到作者社交媒体页面的图标。如果没有针对作者存储的社交媒体链接,我想隐藏相关图标。
也就是说,如果作者元数据facebook_handle不存在,我想隐藏facebook_icon
我使用了下面的代码,但无论元数据是否存在,它似乎都隐藏了图标。任何帮助将不胜感激。
// Hide Facebook icon if no facebook_handle
function facebook_icon_display(){
$facebook = get_the_author_meta('facebook_handle', true);
if(empty($facebook)) : ?>
<style type="text/css">
#facebook_icon {
display: none;
}
</style>;
<?php endif;
}
add_action( 'wp_head', 'facebook_icon_display', 10, 1 );
【问题讨论】:
-
你回了
$facebook,看看你得到了什么? -
嗨,Bhautik。感谢您的回复。我已经尝试使用
$facebook和if(empty($facebook))回显,但似乎都没有获取实际的作者元数据。这令人困惑,因为我在我网站的其他部分使用get_the_author_meta('facebook_handle')创建了一个简码。 -
这个函数里定义了作者吗?
-
嗨霍华德。啊,这可能是问题 - 我需要根据我正在查看的帖子定义作者吗?关于如何去做的任何建议?
-
在函数的开头使用
global $post;,看看此时是否已经填满。如果没有,您可能需要转而使用get_queried_object。然后从该帖子中获取post_author,并将其作为第二个参数传递给get_the_author_meta。
标签: php css wordpress elementor