Saya mencoba mengubah kondisi permintaan tampilan. sampai sekarang saya berhasil mengubah "order by" , tetapi saya tidak tahu bagaimana mengubah kondisi di mana . Saya ingin memeriksa search_term dan jika itu dalam huruf besar, ubah menjadi huruf kecil sehingga kueri dapat menemukannya. juga ada beberapa karakter khusus dalam bahasa saya (persia) yang harus saya ganti sebelum kueri berjalan. ada yang bisa membantu saya di mana untuk memulai atau apa hooks atau views_handlers untuk digunakan?
<?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);
}
}
?>
hasil pengembangan untuk kondisi adalah sebagai follow sekarang. : views_combine sama dengan% 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, '', bidang_data_bidang_book_tags.blog_blog_tags.php
@inheritdoc
Jawaban:
Anda dapat mengakses konten kondisi yang mengubah nilainya:
Cukup mirip dengan yang Anda lakukan dengan orderby. Anda juga dapat menambahkan kondisi khusus tempat ( https://api.drupal.org/api/views/plugins%21views_plugin_query_default.inc/function/views_plugin_query_default%3A%3Aadd_where/7 dan https://api.drupal.org/api/ views / plugins% 21views_plugin_query_default.inc / function / views_plugin_query_default% 3A% 3Aadd_where_expression / 7 )
sumber
Untuk menambahkan klausa baru tempat Anda dapat menggunakan, add_where
Sebagai contoh :
sumber
sumber
Coba ini,
sumber
Anda dapat menggunakan seperti
sumber