我正在尝试使用drupal hook_views_pre_execute()更新视图查询。
它正在正确地更新查询,但即使我的查询只返回几条记录,在视图页面中,它在底部显示分页,但我已经设置了页面限制10。有人能建议我如何解决这个问题吗?
function mymodule_views_pre_execute(&$view)
{
switch($view->name)
{
case 'test_merchandise':
$view->build_info['query'] = "MY QUERY";
drupal_set_message($view->build_info['query']);
break;
}
}发布于 2011-09-20 17:50:51
如果要更改视图查询,请使用此方法
function modulename_views_query_alter(&$view, &$query){
if ( $view->name == 'test_merchandise' ) {
//here you will get the whole $query object and alter only the place you want change
$query->orderby[0] = "substring(node_data_field_date_field_date_value,1,4) DESC";
echo "<pre>";print_r($query);echo "</pre>";
}
}https://stackoverflow.com/questions/7474734
复制相似问题