我相信有了这个片段,人们将能够以wordpress重力形式填充字段:
add_filter( "gform_field_value_products", "mu_populate_products" );
function mu_populate_products() {
global $currUserEntry;
if($currUserEntry){
$e = rgar( $currUserEntry, '37' );
alertUser(maybe_unserialize($e));
return $e;
}
}
我可以向您保证,$e
正好包含在表单验证后发送到数据库的数据,而37
和products
是它们应该是的,我认为问题是这个products字段是一个有两列的列表,第一列通过以下代码段与<select>
一致:
add_filter( 'gform_column_input_30_37_1', 'set_column', 10, 5 );
function set_column( $input_info, $field, $column, $value, $form_id ) {
return array( 'type' => 'select', 'choices' => 'choice 1, choice 2' );
}
如有任何帮助,将不胜感激
过一段时间,对于谷歌用户来说,答案是
function mu_populate_products() {
global $currUserEntry;
if($currUserEntry){
$e = rgar( $currUserEntry, '37' );
return maybe_unserialize($e);
}
}
关键是函数必须返回一个反序列化的对象,而从db返回字段值的rgar
是序列化的,所以使用maybe_unserialize
是关键。
还要记住,这是从Gravity Forms 1.9.10.8
开始工作的了解更多信息:https://www.gravityhelp.com/documentation/article/gform_field_value_parameter_name/#3-列表字段