getPublicUrl
Описание и параметры
public function getPublicUrl( $id = false, $absolute = true, $createPubPath = false );
Получение адреса страницы.
Параметры
Параметр | Описание | Версия |
---|---|---|
id | По-умолчанию false, будет выведен адрес текущей страницы, но можно передать идентификатор иной страницы, или массив идентификаторов (что более актуально для оптимизации запроса). | |
absolute | Если true (по-умолчанию), вернется абсолютный адрес страницы, включая доменное имя и протокол. | |
createPubPath | Если true (по-умолчанию false) произойдет создание физической директории публикации, если ее не существует. |
Примеры
Примеры
if (\Bitrix\Main\Loader::includeModule('landing')) { \Bitrix\Landing\Landing::setEditMode(true); $landing = \Bitrix\Landing\Landing::createInstance( 1 ); if ($landing->exist()) { echo($landing->getPublicUrl()); } foreach ($landing->getError()->getErrors() as $error) { echo $error->getCode() . ': '; echo $error->getMessage(); echo "\n"; } }
Пример группового получения ссылок на страницы
Внимательный читатель мог заметить, что в параметр id можно передать массив идентификаторов страниц. Но где взять изначальный объект $landing, который должен быть инициирован? В виде хитрости можно создать так называемый нулевой лендинг. Он заведомо не существует, поэтому мы создаем его исключительно для получения ссылок, без каких-либо иных проверок:
if (\Bitrix\Main\Loader::includeModule('landing')) { $landing = \Bitrix\Landing\Landing::createInstance( 0 ); $publicUrls = $landing->getPublicUrl([1,2,3]);//идентификаторы страниц print_r($publicUrls); }
Внимание! Мы настоятельно рекомендуем ознакомиться сначала с REST-документацией модуля Сайты, чтобы понять как модуль функционирует (тем более REST доступен и в коробочной версии). Данную документацию рассматривайте как подспорье при работе в коробке, когда вам действительно мало функционала REST, или вы хотите детальнее разобраться в API.