如果语句不起作用,其他问题

时间:2018-10-06 19:11:20

标签: php wordpress

我创建了一个自定义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;
}

我是新来的,请放心。

1 个答案:

答案 0 :(得分:0)

就像@billyonecan所说的那样,这个突破看起来很奇怪。

PS:您甚至不需要指定'else if'条件...只需将'else if'替换为'else'

...
    } else if ( $member["district"] == '' ) {
...

成为

...
    } else {
...

对于您而言,这没有什么区别,这只是很好的做法