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

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