html - 从 ACF 组中获取字段作为 vars
问题描述
我正在尝试从 ACF 获取值,group
但无法通过两种方法获取它们:
以下是我ACF fields
的设置方式以供参考:
方法一:
<?php
$welcome_screen_content = get_field('welcome_screen_content'); // type: group
if( $welcome_screen_content ):
$title = get_field('title');
endif;
echo $title; // prints nothing
?>
方法二:
<?php
if( have_rows('welcome_screen_content') ):
while( have_rows('welcome_screen_content') ): the_row();
$title = get_sub_field('title');
echo $title; // prints nothing
endwhile;
endif;
?>
在我的帖子模板上,title
确实有一个值:
所以不确定为什么在这两种尝试中,回显$title
什么都不做?
解决方案
get_field
在组上使用时,高级自定义字段返回一个包含组字段的关联数组。因此,要获得标题,请执行以下操作:
$welcome_screen_content = get_field('welcome_screen_content'); // type: group
if( $welcome_screen_content ):
$title = $welcome_screen_content['title'];
endif;
方法 1 无法按预期工作,因为get_field('title')
要求 ACF 获取与“welcome_screen_content”组相同级别的字段。
方法 2 无法按预期工作,因为get_subfield
它与Repeater 或 Flexible Content Fields一起使用。
推荐阅读
- reactor-netty - Spring 5 的 Reactive WebClient 不是那么异步?
- c# - 如何在 C# 中显示特定的 Excel 范围
- sql - 需要用外键批量插入
- vb.net - TD Ameritrade 的本地主机 API
- python - 仅将文本文件信息的第一部分附加到数组中
- jelastic - Jelastic:如何为 Certified App 源代码做贡献?
- javascript - 如何修复 Array.filter 以按预期工作?
- android - 使用 gnirehtet 从 Android 设备获取 PC IP 地址
- ios - 字符串格式,如循环 swift4 中的表格
- batch-file - 批处理文件将较新的文件夹复制到其他位置