Функция get_site_url()
в WordPress позволяет получить URL сайта, где доступны файлы приложения WordPress (например, wp-blog-header.php
или папка wp-admin
). Она возвращает опцию site_url
с соответствующим протоколом, определяемым в зависимости от использования SSL.
get_site_url( int|null $blog_id = null, string $path = '', string|null $scheme = null ): string
Параметры:
- $blog_id:
int|null
(необязательный) — ID сайта. По умолчаниюnull
(текущий сайт). - $path:
string
(необязательный) — Путь, относительный к URL сайта. По умолчанию''
. - $scheme:
string|null
(необязательный) — Схема, которая задает контекст URL сайта. Принимает значения'http'
,'https'
,'login'
,'login_post'
,'admin'
,'relative'
. По умолчаниюnull
.
Возвращаемое значение: строка с URL сайта с добавленным необязательным путем.
Пример 1: Получение основного URL сайта
Для того чтобы вывести основной URL сайта, достаточно использовать следующую команду:
echo get_site_url();
// http://www.example.com
Пример 2: Принудительное указание протокола
Если вам нужно указать протокол принудительно, можно использовать следующий код:
echo get_site_url(null, '', 'https');
// https://www.example.com
Пример 3: Получение URL к определенной директории
Если вам необходимо получить URL к папке с темами, это можно сделать следующим образом:
$url = get_site_url(null, '/wp-content/themes/', 'https');
echo $url;
// https://www.example.com/wp-content/themes/
Пример 4: Получение только доменного имени
Чтобы извлечь только доменное имя из URL сайта, можно использовать функцию parse_url()
:
echo parse_url(get_site_url(), PHP_URL_HOST);
// www.example.com
Дополнительные замечания
- Если WordPress установлен в подкаталоге, то функция вернет URL, включающий этот подкаталог. Например, если ваш WordPress находится в папке
subfolder
, то:
echo get_site_url();
// https://www.example.com/subfolder
- Константа
WP_SITEURL
может быть указана в файлеwp-config.php
, и её значение будет использоваться для опцииsiteurl
, а не значение из базы данных.
Заключение
Функция get_site_url()
— это мощный инструмент для получения URL сайта в WordPress. Она позволяет гибко настраивать путь и протокол, что делает её особенно полезной при работе с многоуровневыми структурами или сайтами, использующими различные протоколы.