【发布时间】:2014-10-09 14:57:46
【问题描述】:
这种类型的工作对我来说是新的,所以如果答案很简单,请耐心等待。
我在我的网站上使用 Wordpress 和 Gravity Forms,我想使用来自对象的数据预填充表单(该对象来自 API,所以我不能只使用 wordpress current_user 对象)。
如何在 wordpress 过滤器中使用外部变量?
例如:
$fname = $object->first_name;
add_filter('gform_field_value_firstname', *Populate the field with $fname*);
以下是函数的正常用法,来自 Gravity Forms Docs (http://www.gravityhelp.com/documentation/page/Gform_field_value_$parameter_name)
add_filter('gform_field_value_firstname', "dothis");
“dothis”指向一个函数。
以下方法也有效(基于这篇优秀的文章:http://www.doitwithwp.com/pre-populate-fields-using-gravity-forms/):
add_filter('gform_field_value_firstname', create_function("", 'return "John";' ));
但是,我不知道如何让它也接受外部变量。例如,我想做:
$fname = $object->first_name;
add_filter('gform_field_value_firstname', create_function("", 'return $fname;' ));
但是 php 告诉我 fname 是一个未定义的变量。
我已经查看了这个线程 PHP: How to make variable visible in create_function()? ,但我无法让 Closure 解决方案发挥作用。我有 PHP 版本 5.2.17。
能否请您发布一个如何正确执行此操作的示例?
【问题讨论】:
标签: php wordpress gravity-forms-plugin