Act on the view immediately after the query is built.
Output can be added to the view by setting $view->attachment_before and $view->attachment_after.
\Drupal\views\ViewExecutable $view: The view object about to be processed.
Note: this list is generated by pattern matching, so it may include some functions that are not actually implementations of this hook.
function hook_views_post_build(ViewExecutable &$view) {
// If the exposed field 'type' is set, hide the column containing the content
// type. (Note that this is a solution for a particular view, and makes
// assumptions about both exposed filter settings and the fields in the view.
// Also note that this alter could be done at any point before the view being
// rendered.)
if ($view->name == 'my_view' && isset($view->exposed_raw_input['type']) && $view->exposed_raw_input['type'] != 'All') {
// 'Type' should be interpreted as content type.
if (isset($view->field['type'])) {
$view->field['type']->options['exclude'] = TRUE;
}
}
}