问题描述
我正在尝试使用 Timber 在搜索结果页面上显示给定作者的所有帖子。我发现如果我手动输入它会起作用:
/s?&author_name={username}
但我需要在循环中动态创建这些链接,不幸的是,Timber 的用户对象无法访问用户的 username
。按 ID 也行不通 (/s?&author={author_id}
)。
这里有什么解决方案?
解决方法
我建议您在 Twig 中提供一个函数,它允许您传入作者 ID 并通过 get_author_posts_url() 或访问 WP 用户类返回作者存档链接。
请参阅有关如何实现此目标的文档:
https://timber.github.io/docs/guides/functions/#make-functions-available-in-twig
php
add_filter( 'timber/twig','add_to_twig_author_link' );
function add_to_twig_author_link( $twig ) {
$twig->addFunction( new Timber\Twig_Function( 'get_author_posts_url','get_author_posts_url' ) );
return $twig;
};
树枝
{{ get_author_posts_url( author_id ) }}