Описание функции wp_get_canonical_url()
Функция wp_get_canonical_url() возвращает канонический URL для текущей страницы или записи. Она полезна для предотвращения дублирования контента, указывая поисковым системам основной URL, который должен индексироваться.
Функция используется в основном в контексте обработки заголовков и метаданных для SEO.
Параметры
$id
Тип: int
Обязательный: Нет
По умолчанию: null
Описание: ID записи для получения канонического URL. Если не указано, используется текущая запись.
Возможные значения:
Возвращаемое значение
Тип: string|null
Описание: Канонический URL текущей страницы или записи, либо null в случае ошибки.
Возможные значения:
• Строка с каноническим URL при успешном выполнении
• null если не удалось получить URL
Примеры использования
Базовый пример получения канонического URL текущей записи
$canonical_url = wp_get_canonical_url();
// Вывод: https://example.com/current-post-url
Зависит от текущей записи
Получение канонического URL для записи с ID 42
$canonical_url = wp_get_canonical_url(42);
// Вывод: https://example.com/specific-post-url
Убедитесь, что запись существует
Проверка на наличие ошибок при получении URL
$canonical_url = wp_get_canonical_url();
if ($canonical_url === null) {
echo 'Ошибка получения канонического URL';
}
Сообщение об ошибке при неудаче
Добавление канонического URL в заголовки страницы
add_action('wp_head', function() {
$canonical_url = wp_get_canonical_url();
if ($canonical_url) {
echo '';
}
});
Полезно для SEO
Безопасность
Валидация входных данных: ID записи, если передан, проходит валидацию внутри функции
Санитизация: Выходные данные автоматически очищаются с помощью esc_url()
Рекомендации: Используйте проверку на ошибки перед выводом URL
— Связанные функции
Получает постоянную ссылку на запись
Проверяет, является ли текущая страница записью
— Хуки
Фильтрует канонический URL перед выводом
— Примечания
– Ограничения
Функция может вернуть null, если запись не найдена или не имеет канонического URL
– Частые проблемы
- Ошибка получения URL при несуществующем ID
- Проблемы с редиректами могут влиять на канонический URL