我创建了一个自定义WordPress过滤器。我正在将api数据导入到表单。我的第一个IF语句有效(当区不为空时)。但是,如果要填充第二个字段,我将无法获得其他。 JSON中的第二个结果对于district没有任何价值。我想做的是将结果分开显示,以在一个字段中显示众议院代表,在另一个字段中显示参议员。 (实际上有两个参议院结果,但是我现在不分结果)。每个结果都必须位于不同的表单字段中。
add_filter('frm_pre_create_entry', 'import_fields');
function import_fields($values){
if ( $values['form_id'] == 12 ) {
$zipcode = $values['item_meta'][71];
$api_request = 'http://whoismyrepresentative.com/getall_mems.php?zip='.$zipcode.'&output=json';
$api_response = wp_remote_get( $api_request );
$api_data = json_decode( wp_remote_retrieve_body( $api_response ), true );
foreach ( $api_data["results"] as $member ) {
if ( $member["district"] != '' ) {
$values['item_meta'][72] = $member['name'];
$values['item_meta'][73] = $member['phone'];
$values['item_meta'][74] = $member['office'];
} else if ( $member["district"] == '' ) {
$values['item_meta'][75] = $member['name'];
$values['item_meta'][76] = $member['phone'];
$values['item_meta'][77] = $member['office'];
}
break;
}
}
return $values;
}
我是新来的,请放心。
答案 0 :(得分:0)
就像@billyonecan所说的那样,这个突破看起来很奇怪。
PS:您甚至不需要指定'else if'条件...只需将'else if'替换为'else'
...
} else if ( $member["district"] == '' ) {
...
成为
...
} else {
...
对于您而言,这没有什么区别,这只是很好的做法