【发布时间】:2017-05-03 12:43:54
【问题描述】:
我想将 Gravity Forms 中的列表字段之一设为动态下拉列表。我有使其中一个字段成为下拉列表的代码和使下拉列表动态的代码。请问有人可以帮我结合这两个sn-ps的代码吗?
这是动态下拉菜单的代码
add_filter( 'gform_pre_render_17', populate_dropdown_operations_global_tag1 );
add_filter( 'gform_admin_pre_render_17',
populate_dropdown_operations_global_tag1 );
function populate_dropdown_operations_global_tag1( $form ) {
global $wpdb;
global $loc_id;
$results = $wpdb->get_results( "SELECT name FROM custom_tag WHERE loc_id=$loc_id AND category='global_tag1' AND status='active' ORDER BY name ASC" );
$category = $wpdb->get_row( "SELECT name FROM custom_category WHERE loc_id=$loc_id AND category='global_tag1'" );
$choices = array();
$choices[] = array( "text" => "Select ".$category->name, "value" => " " );
foreach( $results as $result ) :
$choices[] = array( "text" => $result->name, "value" => $result->name );
endforeach;
foreach( $form["fields"] as &$field ) :
if( $field["id"] == '36' ) :
$field["choices"] = $choices;
endif;
endforeach;
return $form;
}
这是列表中下拉列表的代码
add_filter( 'gform_column_input_17_36_1', 'set_column1', 10, 5 );
function set_column1( $input_info, $field, $column, $value, $form_id ) {
return array( 'type' => 'select', 'choices' => 'NEED TO ADD CHOICES HERE' );
}
谢谢!
【问题讨论】:
-
这不是已经奏效了吗?您的最后一个 foreach 应该将所有选择添加到您的下拉列表中。你还需要什么?
-
它不起作用。按原样使用代码将第一个 sn-p 中的选择作为列表的标签。然后我不知道如何将选择从第一个函数调用到第二个函数。我尝试将它们结合起来,但无法正常工作
标签: wordpress gravity-forms-plugin