芝麻web文件管理V1.00
编辑当前文件:/home/dcqnetm/intuns/wp-content/plugins/official-facebook-pixel/core/AAMFieldsExtractor.php
getEnableAutomaticMatching()){ return array(); } //Removing fields not enabled in AAM settings foreach ($user_data_array as $key => $value) { if(!in_array($key, $aam_setttings->getEnabledAutomaticMatchingFields())){ unset($user_data_array[$key]); } } // Normalizing gender and date of birth // According to https://developers.facebook.com/docs/facebook-pixel/advanced/advanced-matching if( array_key_exists(AAMSettingsFields::GENDER, $user_data_array) && !empty($user_data_array[AAMSettingsFields::GENDER]) ){ $user_data_array[AAMSettingsFields::GENDER] = $user_data_array[AAMSettingsFields::GENDER][0]; } if( array_key_exists(AAMSettingsFields::DATE_OF_BIRTH, $user_data_array) ){ // strtotime() and date() return false for invalid parameters $unix_timestamp = strtotime($user_data_array[AAMSettingsFields::DATE_OF_BIRTH]); if(!$unix_timestamp){ unset($user_data_array[AAMSettingsFields::DATE_OF_BIRTH]); } else { $formatted_date = date("Ymd", $unix_timestamp); if(!$formatted_date){ unset($user_data_array[AAMSettingsFields::DATE_OF_BIRTH]); } else { $user_data_array[AAMSettingsFields::DATE_OF_BIRTH] = $formatted_date; } } } // Given that the format of advanced matching fields is the same in // the Pixel and the Conversions API, // we can use the business sdk for normalization // Compare the documentation: // https://developers.facebook.com/docs/marketing-api/conversions-api/parameters/customer-information-parameters // https://developers.facebook.com/docs/facebook-pixel/advanced/advanced-matching foreach($user_data_array as $field => $data){ try{ $normalized_value = Normalizer::normalize($field, $data); $user_data_array[$field] = $normalized_value; } catch(\Exception $e){ unset($user_data_array[$field]); } } return $user_data_array; } }