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

setClasses

Внимание! Мы настоятельно рекомендуем ознакомиться сначала с REST-документацией модуля Сайты, чтобы понять как модуль функционирует (тем более REST доступен и в коробочной версии). Данную документацию рассматривайте как подспорье при работе в коробке, когда вам действительно мало функционала REST, или вы хотите детальнее разобраться в API.

public function setClasses(
	$data
)

Изменяет набор классов по селектору. Возвращает true в случае успеха.

Параметры

ПараметрОписаниеВерсия
dataВ параметре передается массива ключ-значение, где ключом идет селектор, а каждым значением указывается два массива::
  • classList - какие классы добавить в изменяемый селектор.
  • affect - передаются стили, которые надо обнулить у всех дочерних нод. Например, передаётся класс, который окрашивает элемент в цвет (color). Значит в affect надо передать массив [color], чтобы система обнулила все color у дочерних. Иначе будет такая ситуация - цвет родителя стоит красный, а текст внутри останется прежним.

Селектор может передаваться как без указания позиции (например, .landing-block-node-text), тогда будут изменены все карточки по данному селектору. Так и с указанием позиции (например, .landing-block-node-text@2), тогда будет изменена только карточка на указанной позиции (отсчет с нуля).

Примеры

if (\Bitrix\Main\Loader::includeModule('landing'))
{
	\Bitrix\Landing\Landing::setEditMode(true);

	$landing = \Bitrix\Landing\Landing::createInstance(
		5675
	);
	if ($landing->exist())
	{
		foreach ($landing->getBlocks() as $block)
		{
			if ($block->getId() == 45474)
			{
				$block->setClasses([
				'.landing-block-node-title@1' => [
					'classList' => [
						'landing-block-node-title', 'g-color-gray-light-v2', 'text-right'
					],
						'affect' => [
							'text-align'
						]
					]
				]);
				$block->save();
				$landing->getError()->copyError(
					$block->getError()
				);
			}
		}
	}


	foreach ($landing->getError()->getErrors() as $error)
	{
		echo $error->getCode() . ': ';
		echo $error->getMessage();
		echo "\n";
	}
} 


Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Наверх