public static function get_all_custom_field_names() { $custom_fields = array(); // Loop through all Records, adding custom fields to array $args = array('post_type' => 'prsp-record', 'posts_per_page' => -1); $loop = new WP_Query($args); if ($loop->have_posts()) { foreach ($loop->posts as $rec) { $record_id = $rec->ID; $rec_fields = get_post_custom_keys($record_id); foreach ($rec_fields as $key => $value) { $trimmed = trim($value); // exclude WP internal fields if ($trimmed[0] == '_') { continue; } ProspectAttribute::sorted_insert($trimmed, $custom_fields); } } } return $custom_fields; }
public function prsp_get_cf_vals() { $att_id = $_POST['att_id']; $d_char = $_POST['delim']; $result = array(); // Get matching Records $args = array('post_type' => 'prsp-record', 'posts_per_page' => -1); $query = new WP_Query($args); if ($query->have_posts()) { foreach ($query->posts as $rec) { $data = get_post_meta($rec->ID, $att_id, true); if ($data && $data != '') { if ($d_char && $d_char != '' && $d_char != ' ') { $vals = explode($d_char, $data); foreach ($vals as $one_value) { $trimmed = trim($one_value); ProspectAttribute::sorted_insert($trimmed, $result); } } else { $trimmed = trim($data); ProspectAttribute::sorted_insert($trimmed, $result); } } // if data } } die(json_encode($result)); }