Sto provando a modificare la condizione where di una query di visualizzazione. fino ad ora ho avuto successo con l'alterazione di "ordina per" , ma non ho idea di come modificare la condizione di dove . Voglio controllare search_term e se era in maiuscolo, trasformarlo in minuscolo in modo che la query possa trovarlo. inoltre ci sono alcuni caratteri speciali nella mia lingua (persiano) che devo sostituire prima dell'esecuzione della query. qualcuno può aiutarmi da dove cominciare o quali hook o views_handlers usare?
<?php
/**
* Implementation of hook_views_query_alter
* @param type $view
* @param type $query
*/
function nashreneydev_views_query_alter(&$view, &$query) {
//krumo($query);
//krumo($view);
if ($view->name == 'custom_search') {
$search_term = $view->exposed_raw_input['combine'];
**//$query->where[0]['conditions'][0]['field']= "?????";**
$view->query->orderby[1]['field'] = "CASE node_type WHEN 'product_display' THEN 1 ELSE 2 END";
$view->query->orderby[1]['direction'] = "ASC";
$view->query->orderby[0]['field'] = "CASE node_title WHEN '".$search_term."' THEN 1 ELSE 2 END";
$view->query->orderby[0]['direction'] = "ASC";
//krumo($view->query->orderby);
}
}
?>
il risultato di sviluppo per dove condizione è come seguire adesso. : views_combine è uguale a% s%.
CONCAT_WS ('', node.title, '', field_data_body.body_value, '', field_data_field_author.field_author_target_id, '', field_data_field_translator.field_translator_target_id, '', field_data_field_book_tags.field_book_tags_tid) COME: views_combine
@inheritdoc