the_author_meta not working

时间:2012-05-20 作者:Ged

我正在尝试使用\\u author\\u meta检索一些用户可以在其个人资料中设置的链接。

我设置了额外的配置文件字段,它们正在保存到数据库中。

关于我的作者。php我有以下代码。

<div class="user_social_icons"><a href="<?php the_author_meta(\'facebook\'); ?>" class="facebook" title="Facebook"></a></div>
出于某种原因,这似乎不起作用。

你知道为什么吗?

干杯

1 个回复
SO网友:Adam

完全有可能是你在打电话the_author_meta() 从您的post循环之外author.php 模板,在这种情况下,上述内容将不起作用。

相反,您可以使用

  • get_the_author_meta(\'facebook\')
  • get_the_author_meta(\'facebook\', $user_id) 哪里$user_id 是当前用户/作者的ID
要获取用户ID,可以这样做;

<div class="user_social_icons">
    <a href="<?php $id = get_current_user_id(); get_the_author_meta(\'facebook`, $id); ?>" 
    class="facebook" title="Facebook"> ??NO TEXT TO CLICK??  </a>
</div>

注意,我们分配了变量$id = get_current_user_id(); 然后把它传给我们get_the_author_meta 作用

??NO TEXT TO CLICK?? is not an error - you literally have no text between your anchor tags for people to click which could be why you\'re not seeing anything.

备注:

  • the_author_meta($field, $userID) - 内部工程(&N);循环外/将回显值
  • get_the_author_meta($field, $userID) - 内部工程(&N);循环外/将返回值
**在循环中,如果您想要该文章作者的元数据,则不需要指定$userID,否则使用循环中的ID参数可以获取传入ID的特定用户meta。

不完全需要指定user\\u id参数,除非您想获取另一个不是当前帖子作者的用户的数据,但是作为一种附加措施,通过传递该值可以帮助您解决问题。顺便说一下,这两个函数都接受user\\u id参数。

总而言之,

检查调用函数的上下文,是吗within the loopoutside of the loop? 取决于作者所在的位置。在调用的php模板中,选择上述适当的函数。如果要双重确认,可以选择传递用户ID。

检查您是否没有文本<a href"#">between</a> 您href anchor实际上是问题的根源,除非您正在注入链接或使用宽度/高度/背景设置链接/div的样式,否则这就是likely culprit 为什么你什么都没看到。

结束

相关推荐

在Functions.php中创建“无文件”页面模板

(所谓“页面模板”,我指的是具有\"Template Name\" header 可在管理页面的“模板”下拉字段中选择。)在多个实例中,我构建了页面模板,可以通过挂接到\\u内容或pre\\u get\\u帖子或类似的内容来完成。这让我想知道是否有一种方法可以在functions.php 或者不创建主题文件本身的插件。我想这样做的原因:在我想到的场景中,我通常只是复制页面。php几乎一字不差。这意味着将来对页面的任何更改。php需要制作两次。随着儿童主题的更新,这更加令人痛苦</我喜欢“模板”字段U