Добавить в мета-тег canonical номер текущей страницы
14 января 2017
Модуль Metatag не позволяет с помощью токенов добавить в canonical номер текущей страницы. Создадим собственный токен [current-page:url:with-current-pager]
:
/** * Implements hook_token_info(). */ function modulename_token_info() { return array( 'tokens' => array( 'url' => array( 'with-current-pager' => array( 'name' => t('URL with current page number'), 'description' => t('URL with current page number'), ), ), ), ); } /** * Implements hook_tokens(). */ function modulename_tokens($type, $tokens, array $data = array(), array $options = array()) { $replacements = array(); if ($type == 'url') { /** @see token_tokens() */ $url_options = array('absolute' => TRUE); if (isset($options['language'])) { $url_options['language'] = $options['language']; } if (isset($data['options'])) { $url_options = $data['options'] + $url_options; } foreach ($tokens as $name => $original) { if ($name == 'with-current-pager' && !empty($data['path'])) { if ($page = pager_find_page()) { $url_options['query']['page'] = $page; } $replacements[$original] = url($data['path'], $url_options); } } } return $replacements; }
Результат: