Twig 使用带有木材/细枝的ACF走廊
我正在使用Timber(Twig的WordPress插件实现)和Advanced Custom Fields插件gallery field。我有一个工作画廊下的自定义职位类型,所以ACF和木材是工作在其他地方的网站,但不是一个标准的页面。当我尝试向页面添加图库时,我得到的结果是Twig 使用带有木材/细枝的ACF走廊,twig,advanced-custom-fields,timber,Twig,Advanced Custom Fields,Timber,我正在使用Timber(Twig的WordPress插件实现)和Advanced Custom Fields插件gallery field。我有一个工作画廊下的自定义职位类型,所以ACF和木材是工作在其他地方的网站,但不是一个标准的页面。当我尝试向页面添加图库时,我得到的结果是imgsrc标记的空标记 我在page.php的模板文件夹中有以下内容: $context = Timber::get_context(); $page = new TimberPost(); $context['pag
imgsrc
标记的空标记
我在page.php的模板文件夹中有以下内容:
$context = Timber::get_context();
$page = new TimberPost();
$context['page'] = $page;
if ($photos = $page->get_field('photos')) {
$context['photos'] = $photos;
}
我在主题的模板/页面/文件夹中的default.twig中有这个(为了简单起见删除了html):
{%if page.photos%}
{%p在page.photos%}
{{p.caption}}
{%endfor%}
{%endif%}
这将导致页面源代码
如果我在page.photos中的p的语句中使用{{dump(photos)}
,它将转储我在后端的Gallery字段中输入的图像数组。因此图像数组存在并正在输出。relative
扩展适用于所有职位类型;移除它在这里没有什么区别
那么为什么p.size.gallery | relative
函数不输出每个图像的url和标题?您将数据附加到$context['photos']中,因此我认为您应该更改代码,检查如果照片,并作为在照片中重复p
将数据附加到$context['photos']
那么,你的代码不应该检查是否有照片
并作为“照片中的p”进行迭代吗?@Owi,啊,就是这样。谢谢我只是没看到。加上这个作为答案。我刚刚加上了答案,谢谢;)
{% if page.photos %}
{% for p in page.photos %}
<img src="{{ p.sizes.gallery|relative }}" alt="{{ p.alt }}" />
{{ p.caption }}
{% endfor %}
{% endif %}