Timber/Twig - 如何访问组内中继器内的 Wordpress Post 对象
Posted
技术标签:
【中文标题】Timber/Twig - 如何访问组内中继器内的 Wordpress Post 对象【英文标题】:Timber/Twig - how to access a Wordpress Post Object inside a Repeater inside a Group 【发布时间】:2020-12-19 18:28:52 【问题描述】:这是我的设置:
Twig Version: 1.34.4
ACF Pro 5.8.8
我创建了以下 ACF 字段,我正在尝试将工作网页从标准 php 转换为 Twig。
ACF 字段组 > 组 > 中继器 > 发布对象
在中继器级别,我可以正常访问其他标准字段,并且我在 Twig 模板上显示这些字段没有问题。我的问题是如何访问 Post 对象内部,以便提取标准 WP 字段 Title、Content 等。
我在 https://timber.github.io/docs/guides/acf-cookbook/ 参考 ACF 食谱,并认为关系字段可能会起作用,如下所示:
% for item in Post(post.relationship_field) %
item.title
# Do something with item #
% endfor %
但是这根本不输出任何东西,所以我不确定它是否正常工作。
在我的 PHP 页面中,我只传递标准的帖子上下文,如下所示:
$context['post'] = $post;
我是否必须在 PHP 页面中添加任何其他内容才能使其正常工作,或者我是否应该能够在 Twig 模板中本地执行此操作?
【问题讨论】:
你能 dump(post)
看看什么吗?
当我对帖子运行完整转储时,它会显示我需要访问的帖子 ID。那显然不是 Post 对象。 ACF 设置是正确的(设置为返回 Post 对象),在以前的非 Twig PHP 网页上,我必须运行单独的 WP_Query 来获取对象。那么我现在在 Twig 中有哪些选择?
【参考方案1】:
已修复!我遇到了这个答案,它为我解决了Issue with Post Object Timber/Twig WordPress。虽然转储中返回了 Post ID,但似乎我试图以不正确的方式访问它。
【讨论】:
以上是关于Timber/Twig - 如何访问组内中继器内的 Wordpress Post 对象的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 poedit 解析 Timber (twig) 模板并检测引用的字符串以进行翻译
markdown 如何在带有Timber / twig的WordPress网站上启用和使用Yoast Breadcrumbs
markdown 如何在带有Timber / twig的WordPress网站上启用和使用Yoast Breadcrumbs