function hook_views_pre_view
Allows altering a view at the very beginning of processing a preview.
Occurs before anything is done.
This hook is only triggered when the one of the following are invoked:
- $view->execute_display()
- $view->preview()
As such code placed in this hook will not fire during:
- $view->build()
- $view->execute()
- $view->render()
Likely, hook_views_pre_build() or hook_views_pre_execute() are much better choices for most use cases since they are always invoked, not just when previewing a display.
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
1 invocation of hook_views_pre_view()
- view::pre_execute in includes/
view.inc - Run attachments and let the display do what it needs to do prior to running.
File
-
./
views.api.php, line 988
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');
}
}