Advanced Custom Fields(ACF)重要调用标签 get_field()

描述

返回特定字段的值。直观且功能强大(很像 Advanced Custom Fields(ACF) 本身?),该函数可用于从任何位置加载任何字段的值。请注意,每个字段类型返回不同形式的数据(字符串、整数、数组等)。

参数

get_field($selector, [$post_id], [$format_value]);
  • $selector (字符串) (必需) 字段名称或字段键。
  • $post_id (混合) (可选) 保存值的文章/页面 ID。默认为当前文章/页面。
  • $format_value (bool) (可选) 是否应用格式化逻辑。默认为 true。

返回

(混合)字段值。

例子

从当前帖子中获取值

此示例演示如何从当前帖子加载字段“text_field”的值。

$value = get_field( "text_field" );

从特定帖子中获取值

此示例演示如何从 ID = 123 的帖子中加载字段“text_field”的值。

$value = get_field( "text_field", 123 );

检查值是否存在

此示例演示如何检查字段的值是否存在。

$value = get_field( "text_field" );

if( $value ) {echo $value;
} else {echo 'empty';
}

从不同的对象中获取值

此示例显示了各种$post_id值,用于从帖子、用户、术语和选项中获取值。

$post_id = false; // current post
$post_id = 1; // post ID = 1
$post_id = "user_2"; // user ID = 2
$post_id = "category_3"; // category term ID = 3
$post_id = "event_4"; // event (custom taxonomy) term ID = 4
$post_id = "option"; // options page
$post_id = "options"; // same as above

$value = get_field( 'my_field', $post_id );

获取不带格式的值

在此示例中,字段“image”是通常返回 Image 对象的图像字段。但是,通过将 false 作为第三个参数传递给 get_field 函数,该值永远不会被格式化并按原样从数据库返回。

请注意,第二个参数设置为false以定位当前帖子。

$image = get_field('image', false, false);

参考链接:https://www.wpdaxue.com/advanced-custom-fields.html

笔记

在 ACF 5.11 之前,get_field()可用于检索与 ACF 字段不关联的项目的选项或元值。这会产生安全隐患,因为站点选项可能会被暴露。get_field()还可以检索不再在 ACF 中注册的字段的值。

这已在 ACF 5.11 中更新,请参阅5.11 资源中 ACF 字段函数的更新以获取更多信息。

1人评论了“Advanced Custom Fields(ACF)重要调用标签 get_field()”

  1. Pingback: ACF 基础版本,Archive类动态页如何调用标签 - 听可科技-高端网站建设公司

评论区已关闭。

滚动至顶部