function metatag_get_view_tags in Metatag 8
Gets the meta tags of a specific view, if set.
Parameters
mixed $view: The view id, view config entity or view executable.
string $display_id: The display id. If empty uses the preselected display if $view is a ViewExecutable, otherwise the default display.
Return value
array|null The meta tags if set, null otherwise.
3 calls to metatag_get_view_tags()
- MetatagViewsController::getTaggedViews in metatag_views/
src/ Controller/ MetatagViewsController.php - Get meta tags for all of the views / displays that have them set.
- MetatagViewsEditForm::buildForm in metatag_views/
src/ Form/ MetatagViewsEditForm.php - Form constructor.
- metatag_views_metatags_alter in metatag_views/
metatag_views.module - Implements hook_metatags_alter().
File
- metatag_views/
metatag_views.module, line 29 - Contains hook implementations for the metatag_views module.
Code
function metatag_get_view_tags($view, $display_id = NULL, $args = []) {
if (empty($view)) {
return;
}
if ($view instanceof ViewEntityInterface) {
$view = $view
->getExecutable();
}
elseif (is_string($view)) {
$view = Views::getView($view);
}
if (!$view instanceof ViewExecutable) {
return;
}
$view
->setDisplay($display_id);
$view
->setArguments($args);
$view
->buildTitle();
// And get the list of extenders for this display.
$extenders = $view
->getDisplay()
->getExtenders();
if (!isset($extenders['metatag_display_extender'])) {
// If the id of the plugin is not in the list then something is wrong.
return;
}
// Retrieve the metatag settings from the extender.
return $extenders['metatag_display_extender']
->getMetatags();
}