Archivio mensile:novembre 2011

Come modificare il numero dei risultati della ricerca in Drupal 7

Se qualcuno di voi avesse necessità di modificare il numero di risultati che vengono mostrati nella pagina di ricerca in Drupal 7 sappiate che potete farlo facilmente implementando, all’interno di un vostro modulo, l’hook_query_alter.

/**
 *Implementation of hook_query_alter().
 */
function miomodulo_query_alter(QueryAlterableInterface $query){
    if(is_a($query, 'PagerDefault')){
        $tables = $query->getTables();
        if((!empty($tables['i'])) && ($tables['i']['table'] == 'search_index'))
            $query->limit(20);
    }
}

dove 20 è il numero di risultati che verranno mostrati, piuttosto che 10 che è il valore di default scritto all’interno del codice core di Drupal 7 (vedi hook_search_execute() e node_search_execute()).

Magari al posto di scrivere direttamente il numero all’interno della funzione potreste richiamare una variabile custom tipo:

variable_get(‘custom_search_results’, 10);

Bell@

Annunci
Contrassegnato da tag ,
%d blogger hanno fatto clic su Mi Piace per questo: