6.x-3.x docs.php hook_views_pre_view(&$view, &$display_id, &$args)
7.x-3.x views.api.php hook_views_pre_view(&$view, &$display_id, &$args)

Allows altering a view at the very beginning of views processing.

Occurs before anything is done.

Adding output to the view can be accomplished by placing text on $view->attachment_before and $view->attachment_after.

Parameters

object $view: The view object about to be processed.

string $display_id: The machine name of the active display.

array $args: An array of arguments passed into the view.

Related topics

File

./views.api.php, line 915
Describe hooks provided by the Views module.

Code

function hook_views_pre_view(&$view, &$display_id, &$args) {

  // Change the display if the acting user has 'administer site configuration'
  // permission, to display something radically different.
  // (Note that this is not necessarily the best way to solve that task. Feel
  // free to contribute another example!)
  if ($view->name == 'my_special_view' && user_access('administer site configuration') && $display_id == 'public_display') {
    $view
      ->set_display('private_display');
  }
}