我需要将参数从我的模块传递给View;例如,我想传递节点标题的一部分,并需要获取以该值开头的所有节点。
我不能使用暴露的过滤器,因为我有一个特定的布局,无法使用暴露的过滤器设计,所以我需要以编程方式传递参数。
我想使用Contextual过滤器,但我还没有找到指定“Starts with”指令的方法。
如何传递过滤器/参数?
答案 0 :(得分:3)
$view = views_get_view('machine_name_of_view');
$view->set_arguments(array('argument1', 'argument2'));
$view->execute();
答案 1 :(得分:2)
$nids = array(123);
$view = views_get_view('news');
$view->set_arguments($nids);
$preview = $view->preview('page_1');
$view->destroy();
return $preview;
答案 2 :(得分:0)
$nid_str = implode(",",$nid_arr['nid']); // i.e. "1,2,3,4"
$view = views_get_view('view_name');
$view->set_display('view_display');
$view->set_arguments(array($nid_str));
$view->dom_id = 'view_dom_id';
$output .= $view->render();