get_canonical_url
Дозволяє змінити канонічне посилання WordPress для постів.
Метатег сanonical
використовується пошуковими системами тільки в одному випадку: коли пошукова система виявила дублюючий контент, і при цьому у неї не достатньо своїх підстав для вибору канонічної адреси. У всіх інших випадках canonical ігнорується.
Використання
add_filter( 'get_canonical_url', 'wp_kama_get_canonical_url_filter', 10, 2); /** * Function for `get_canonical_url` filter-hook. * * @param string $canonical_url The post's canonical URL. * @param WP_Post $post Post об'єкт. * * @return string */ function wp_kama_get_canonical_url_filter( $canonical_url, $post ){ // Filter... return $canonical_url; }
-
$canonical_url
(рядок) - Канонічна посилання посту.
-
$post
(WP_Post) - Об’єкт посту.
Приклади
#1 Змінимо канонічне посилання посту
Допустимо ми змінили ЧПУ записів і додали до правил параметр запиту post_subpage
, який містить у собі дочірню сторінку поточного запису.
Наприклад:
/my-post/
URL запису.
/my-post/gallery/
– URL статичної дочірньої сторінки запису.
За замовчуванням для таких нестандартних записів метатег canonical буде таким же, як для запису. Але це окремі сторінки з різним контентом і канонічна посилання також повинна відрізнятися.
Щоб такі сторінки мали своє канонічна посилання створимо наступний хук:
add_filter( 'get_canonical_url', 'subpages_canonical', 10, 2); function subpages_canonical( $canonical_url, $post ){ if( $subpage = get_query_var('post_subpage') ){ $canonical_url = user_trailingslashit( rtrim( get_permalink( $post ), '/' ) ."/$subpage" ); } return $canonical_url; }
список змін
З версії 4.6.0 | Введено. |
Де викликається хук
return apply_filters( 'get_canonical_url', $canonical_url, $post);
Де використовується хук у WordPress
Використання не знайдено.