Получение URL домашней страницы в WordPress с помощью функции get_home_url()
Функция get_home_url() позволяет получить URL вашего сайта, по которому доступен его фронтенд. Эта функция возвращает опцию 'home' с подходящим протоколом. Если сайт использует SSL (то есть защищенное соединение), URL будет начинаться с https; если нет — будет использоваться тот же протокол, что и в опции 'home'. При этом, если вы укажете протокол ($scheme) как 'http' или 'https', функция is_ssl() будет проигнорирована.
Использование функции
Функция имеет следующий вид:
get_home_url( $blog_id, $path, $scheme );
Параметры
- $blog_id (int|null): ID сайта. По умолчанию -
null(текущий сайт). - $path (string): Путь относительно домашнего URL. По умолчанию - пустая строка (
''). - $scheme (string|null): Протокол для задания контекста домашнего URL. Принимает значения 'http', 'https', 'relative', 'rest' или
null. По ��молчанию -null.
Пример использования
Вот несколько примеров, как вы можете использовать функцию get_home_url():
// выводит: http://example.com
// выводит: https://example.com/wp-admin/
// выводит: /blog
// выводит: https://example.com/my-page?id=123
Возврат значения
Функция get_home_url() возвращает строку — ссылку на домашнюю страницу с необязательным добавленным путем.
Логика работы функции
Простая логика работы функции:
- Если не указан
$blog_idили сайт не является мультисайтовым, функция получает URL домашней страницы из опций. - Если сайт мультисайтовый, используется функция
switch_to_blog()для переключения на нужный сайт, после чего URL извлекается и восстановливается контекст текущего сайта. - Проверяется схема URL (HTTP или HTTPS), если не указано и ненадежный HTTP-сайт, то используется схема из опции.
Хуки
Функция get_home_url() использует хук home_url, который позволяет нам изменять URL для домашней страницы.
return apply_filters( 'home_url', $url, $path, $orig_scheme, $blog_id );
Список похожих функций
Вот несколько функций, которые могут быть полезны в связке с get_home_url():
admin_url(): Получает URL для админ-панели.site_url(): Получает URL сайта.home_url(): Получает URL домашней страницы (аналогично сget_home_url()).
Заключение
Функция get_home_url() - это мощный и простой способ получать URL вашего сайта в WordPress. Понимание ее работы поможет вам лучше управлять URL-адресами и создавать ссылки на вашем сайте.