function metatag_hreflang_metatag_metatags_view_alter in Metatag 7
Implements hook_metatag_metatags_view_alter().
File
- metatag_hreflang/
metatag_hreflang.module, line 64 - Primary hook implementations for Metatag:hreflang.
Code
function metatag_hreflang_metatag_metatags_view_alter(&$output, $instance, $options) {
// Remove any hreflang="LANGCODE" values that match hreflang="x-default".
// Using this hook instead of hook_html_head_alter() as it gets closer to
// Metatag's data structures, and the results are cached so this won't be
// executed on every page request.
// This behaviour may be disabled from the Metatag settings page.
if (!variable_get('metatag_hreflang_allow_dupe', FALSE)) {
if (!empty($output['hreflang_xdefault'])) {
$default = $output['hreflang_xdefault']['#attached']['drupal_add_html_head'][0][0]['#value'];
foreach ($output as $tag_name => &$tag) {
// Skip the x-default tag.
if ($tag_name == 'hreflang_xdefault') {
continue;
}
if (strpos($tag_name, 'hreflang_') === 0) {
if ($tag['#attached']['drupal_add_html_head'][0][0]['#value'] == $default) {
$tag['#attached']['drupal_add_html_head'][0][0]['#access'] = FALSE;
}
}
}
}
}
}