Документация для разработчиков
Темная тема

Специальные страницы

Описание

При создании страницы через мастер в манифесте могут быть прописаны специальные страницы. Например, страница корзины. Для таких страниц предусмотрены специальные метки, чтобы в теле страницы можно было ссылаться на определенную системную, не зная ее полного адреса и даже ID.

Если для данного маркера существует соответствующая страница в рамках текущего сайта, адрес будет подставлен вместо макера, в ином случае маркер будет проигнорирован.


Пример

<a href="#system_cart">Корзина</a> 
//обратите внимание, маркер намеренно ставится без закрывающегося символа решетки #

Существующие на данный момент маркеры спец.страниц:

  • #system_mainpage – главная страница
  • #system_catalog – главная страница каталога
  • #system_personal – персональный раздел
  • #system_cart – корзина
  • #system_order – оформление заказа
  • #system_payment – страница оплаты (непосредственно процессинг оплаты)
  • #system_compare – страница сравнения

Методы

Scope: landing Права на выполнение: для всех

Метод Описание С версии
landing.syspage.set Метод устанавливает для сайта специальную страницу. Если параметр lid не передан, то соответствующий тип страницы, не сама страница, будет удален. Метод не возвращает результата.
BX24.callMethod(
	'landing.syspage.set',
	{
		id: 1390,// ИД сайта
		type: 'personal',// тип страницы
		lid: 8593// ИД страницы, которая в рамках сайта будет считаться данного типа
	},
	function(result)
	{
		if(result.error())
		{
			console.error(result.error());
		}
		else
		{
			console.info(result.data());
		}
	}
)
landing.syspage.get Метод возвращает список страниц сайта, которые установлены как специальные.
BX24.callMethod(
	'landing.syspage.get',
	{
		id: 1390,// ИД сайта
		active: true// Если true, то вернутся только активные страницы сайта (по умолчанию все)
	},
	function(result)
	{
		if(result.error())
		{
			console.error(result.error());
		}
		else
		{
			console.info(result.data());
		}
	}
);
landing.syspage.getSpecialPage Метод возвращает адрес специальной страницы сайта. В примере показано как получить ссылку на страницу персонального раздела сайта.
BX24.callMethod(
	'landing.syspage.getSpecialPage',
	{
		siteId: 1391,// ИД сайта
		type: 'personal',// тип специальной страницы
		additional: {// необязательный массив доп. параметров, которые будут добавлены к URL
			SECTION: 'private'
		}
	},
	function(result)
	{
		if(result.error())
		{
			console.error(result.error());
		}
		else
		{
			console.info(result.data());
		}
	}
);
landing.syspage.deleteForLanding Метод удаляет все упоминания страницы как специальной.
BX24.callMethod(
	'landing.syspage.deleteForLanding',
	{
		id: 8613 // ИД страницы
	},
	function(result)
	{
		if(result.error())
		{
			console.error(result.error());
		}
		else
		{
			console.info(result.data());
		}
	}
);
landing.syspage.deleteForSite Метод удаляет все специальные страницы сайта.
BX24.callMethod(
	'landing.syspage.deleteForSite',
	{
		id: 1391 // ИД сайта
	},
	function(result)
	{
		if(result.error())
		{
			console.error(result.error());
		}
		else
		{
			console.info(result.data());
		}
	}
);


© «Битрикс», 2001-2024, «1С-Битрикс», 2024