the_field() function puts value in the wrong position(函数的作用是:将值放在错误的位置。)
本文介绍了函数的作用是:将值放在错误的位置。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
所以我试图获取我创建的一个定制字段的值。基本上,我希望通过WordPress中的自定义字段,用动态给定的ID填充模板中的重力表单短码(在循环内)。我正在使用ACF GET_FIELD函数,但我真的不明白出了什么问题。在本例中,重力表单的ID为"%3"。
我的做法是:
echo do_shortcode('[gravityforms id="'.the_field('gf-for-events').'" title="false" description="false" ajax="true"]');
现在我得到的结果是:
3
Oops! We could not locate your form.
获得输出的ID确实是正确的,但由于某种原因,它被输出到错误的位置。为了进一步测试这一点,我尝试了这个:
$test = the_field('gf-for-events');
echo ('[gravityforms id="'.$test.'" title="false" description="false" ajax="true"]');
以下是输出:
3[gravityforms id="" title="false" description="false" ajax="true"]
我知道这与_field函数有关,因为当对ID进行硬编码时,它会以正确的方式输出。
$test = 3;
echo ('[gravityforms id="'.$test.'" title="false" description="false" ajax="true"]');
[gravityforms id="3" title="false" description="false" ajax="true"]
我想知道这里出了什么问题,我有什么遗漏的吗?是否有其他方法可以使用get_field()?
推荐答案
the_field()
方法会立即输出值。当您改用get_field()
时,它将作为返回值返回,因此您可以将其赋给变量。
然后您可以在代码中的任何位置使用该值:
$value = get_field('gf-for-events');
if ( $value ) {
echo '[gravityforms id="' . $value . '" title="false" description="false" ajax="true"]';
}
这应该会输出(如果返回值确实是3
):
[gravityforms id="3" title="false" description="false" ajax="true"]
the_field()
和get_field()
的文档中也分别进行了说明:
_field():显示特定字段的值。
get_field():返回特定字段的值。
这篇关于函数的作用是:将值放在错误的位置。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:函数的作用是:将值放在错误的位置。
基础教程推荐
猜你喜欢
- Libpuzzle 索引数百万张图片? 2022-01-01
- 通过 PHP SoapClient 请求发送原始 XML 2021-01-01
- mysqli_insert_id 是否有可能在高流量应用程序中返回 2021-01-01
- WooCommerce 中选定产品类别的自定义产品价格后缀 2021-01-01
- 在 PHP 中强制下载文件 - 在 Joomla 框架内 2022-01-01
- 在 Woocommerce 中根据运输方式和付款方式添加费用 2021-01-01
- 在多维数组中查找最大值 2021-01-01
- 超薄框架REST服务两次获得输出 2022-01-01
- XAMPP 服务器不加载 CSS 文件 2022-01-01
- 如何在 PHP 中的请求之间持久化对象 2022-01-01