$settings) { if ($settings['type'] == 'taxonomy_term_reference') { $voc = taxonomy_vocabulary_machine_name_load($settings['settings']['allowed_values'][0]['vocabulary']); $taxonomy_fields[$voc->vid] = $name; } } // Build keys for taxonomy. foreach ($variables['terms'] as $t) { $vocid = taxonomy_term_load($t)->vid; $keys['fq[' . count($keys) . ']'] = 'im_' . $taxonomy_fields[$vocid] . ':' . $t; } } foreach (module_implements('custom_search_apachesolr_processing') as $module) { $function = $module . '_custom_search_apachesolr_processing'; if (function_exists($function)) { call_user_func_array($function, array(&$keys, $fields, $variables['other'])); } } return array('path' => $type, 'query' => $keys); }