You are here

function apachesolr_multisitesearch_metadata in Apache Solr Multisite Search 6

Same name and namespace in other branches
  1. 6.2 apachesolr_multisitesearch.admin.inc \apachesolr_multisitesearch_metadata()

@file Provides a multi-site search admin pages and functionality

1 call to apachesolr_multisitesearch_metadata()
apachesolr_multisitesearch_update_metadata in ./apachesolr_multisitesearch.admin.inc
4 string references to 'apachesolr_multisitesearch_metadata'
apachesolr_multisitesearch_enabled_facets_form in ./apachesolr_multisitesearch.admin.inc
Creates the form that allows the user to select which facets will be enabled.
apachesolr_multisitesearch_get_metadata in ./apachesolr_multisitesearch.admin.inc
apachesolr_multisitesearch_rebuild_facets in ./apachesolr_multisitesearch.admin.inc
theme_apachesolr_breadcrumb_hash in ./apachesolr_multisitesearch.module

File

./apachesolr_multisitesearch.admin.inc, line 8
Provides a multi-site search admin pages and functionality

Code

function apachesolr_multisitesearch_metadata() {
  $document = new Apache_Solr_Document();
  $document->id = apachesolr_document_id(0, 'multisite_metadata');
  $document->site = url(NULL, array(
    'absolute' => TRUE,
  ));
  $document->hash = apachesolr_site_hash();
  $document->entity = 'multisite_meta';
  $document->ss_multisite_meta_sitename = variable_get('site_name', 'Drupal');
  module_load_include('inc', 'apachesolr', 'apachesolr.index');
  if (module_exists('taxonomy')) {
    $vocabs = taxonomy_get_vocabularies();
    foreach ($vocabs as $vid => $vocab) {

      // We index each name as a string for cross-site faceting
      // using the vocab name rather than vid in field construction.
      $document
        ->setMultiValue('sm_multisite_meta_taxonomy', apachesolr_vocab_name($vid));
    }
  }
  drupal_alter('apachesolr_multisitesearch_metadata', $document);
  return $document;
}