我想为在博客上发表评论的管理员添加一种特殊的样式。我试图通过https://timber.github.io/docs/reference/timber-comment/#author通过{{commment.author.roles}}来拉动评论作者的角色,但似乎没有返回正确的角色,甚至没有正常的\ User对象。>
我遇到了这个问题线程https://github.com/timber/timber/issues/1866,这似乎表明该问题已修复并合并,但对于我来说似乎仍然无效。
我正在使用WordPress v5.1.1和Timber v1.9.4。
我的single.php很简单:
$context = Timber::get_context();
$post = Timber::query_post();
$context['post'] = $post
Timber::render( array( 'single-' . $post->ID . '.twig', 'single-' . $post->post_type . '.twig', 'single.twig' ), $context );
然后在single.twig中调用我的comment.twig部分:
<ol class="comments__list" id="commentlist">
{% if post.comments %}
{% for cmt in post.comments %}
{% include "comment.twig" with {comment:cmt} %}
{% endfor %}
{% endif %}
</ol>
然后在comment.twig中尝试使用
{{comment.author.roles|join(', ')}}
返回NULL。
如果我只是转储评论作者ala
{{ dump(comment.author) }}
我得到了\ User对象的一个看似截短的版本:
object(Timber\User)#1635 (12) { ["object_type"]=> string(4) "user" ["_link"]=> NULL ["avatar_override"]=> NULL ["description"]=> NULL ["display_name"]=> NULL ["first_name"]=> NULL ["last_name"]=> NULL ["id"]=> NULL ["user_nicename"]=> NULL ["roles":protected]=> NULL ["ID"]=> NULL ["name"]=> string(10) "Josh Masen" }
对于我在这里可能做错的任何事情,我们将不胜感激。我对Timber还是很陌生,所以我决定在这里发帖而不是发布问题,因为我觉得我可能会丢失一些东西。