- Load a view:$view = views_get_view('view_name');?>
- Initalize it and add arguments. Fiddle with options as needed:$view->set_display('default');$view->set_arguments(array('first', 'second'));$view->is_cacheable = FALSE;$view->display['default']->handler->options['items_per_page'] = 3;$view->display['default']->handler->options['title'] = $title;$view->display['default']->handler->options['display_options']['use_pager'] =FALSE;?>
- Or add a filter. Works for fields, sorts, and arguments as well.$display_id = 'default';$view->set_display($display_id);$id = $view->add_item($display_id, 'filter', 'og_uid', 'is_admin');$item = $view->get_item($display_id, 'filter', $id);$item['value'] = array(0, 1);$view->set_item($display_id, 'filter', $name, $item);$view->is_cacheable = FALSE;?>
- Get an array of the view result objects:$view->execute();
foreach ($view->result as $result) {
foreach ($view->field as $id => $field) {
if (!empty($view->field[$id]['handler'])) {
$view->field[$id]['handler']->pre_render($view->result);
// Do something with this unrendered result object
}
}
}?> - Another way to get array of results:$view->render();
foreach ($view->result as $result) {
// Do something with this rendered result object}?> - Use a custom display plugin$display_id = $view->add_display('my plugin');$result = $view->render($display_id);?>
- Another method$view = views_get_view('my_view');$view->execute_display($display_id, $args);?>
Through Arguments:-
$view = views_get_view('view_name');
$view->set_display('default');
$view->pager['items_per_page'] = 5;
$view->set_arguments(array($id));
$result = $view->render();
$view->is_cacheable = TRUE;
print $result;
$view->set_display('default');
$view->pager['items_per_page'] = 5;
$view->set_arguments(array($id));
$result = $view->render();
$view->is_cacheable = TRUE;
print $result;
Through Filters:-
$view = views_get_view('view_name');
$view->pager['items_per_page'] = 3;
$display_id = 'block_1';
$view->set_display($display_id);
$item = $view->get_item($display_id, 'filter', 'title');
$item2 = $view->get_item($display_id, 'filter', 'nid');
$item['value'] = $load_node->title;
$item2['value'] = array('value'=> $load_node->nid);
$view->set_item($display_id, 'filter', 'title', $item);
$view->set_item($display_id, 'filter', 'nid', $item2);
$view->is_cacheable = FALSE;
$view->execute();
$output = $view->render();
print $output;
$view->pager['items_per_page'] = 3;
$display_id = 'block_1';
$view->set_display($display_id);
$item = $view->get_item($display_id, 'filter', 'title');
$item2 = $view->get_item($display_id, 'filter', 'nid');
$item['value'] = $load_node->title;
$item2['value'] = array('value'=> $load_node->nid);
$view->set_item($display_id, 'filter', 'title', $item);
$view->set_item($display_id, 'filter', 'nid', $item2);
$view->is_cacheable = FALSE;
$view->execute();
$output = $view->render();
print $output;