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():返回特定字段的值。
这篇关于函数的作用是:将值放在错误的位置。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
织梦狗教程
本文标题为:函数的作用是:将值放在错误的位置。
基础教程推荐
猜你喜欢
- YouTube API v3 点赞视频,但计数器不增加 2022-01-01
- 如何在 Laravel 中使用 React Router? 2022-01-01
- PHP 类:全局变量作为类中的属性 2021-01-01
- Cron Jobs 调用带有变量的 PHP 脚本 2022-01-01
- 有什么方法可以用编码 UTF-8 而不是 Unicode 返回 PHP`json_encode`? 2021-01-01
- 如何在 Laravel 5.3 注册中添加动态下拉列表列? 2021-01-01
- PHP PDO MySQL 查询 LIKE ->多个关键词 2021-01-01
- 学说 dbal querybuilder 作为准备好的语句 2022-01-01
- 如何替换eregi() 2022-01-01
- 在PHP中根据W3C规范Unicode 2022-01-01
