API компонентов инфоблока: не выбирать сео-подстановки для элементов списка в catalog.section

Рейтинг: 4.8902  
Новая
Предложил Пользователь 17890 20.11.2022 05:37:44

API компонентов инфоблока: не выбирать сео-подстановки для элементов списка в catalog.section

Хотелось бы управлять в виде: выбрать или нет сео-данные в компонентах наследниках для работы с элементами инфоблока (catalog.section, и проч.)

пока захардкорил в базовом компоненте инфоблоков, чтобы у элементов в catalog.section не выбирались сео-данные (они же по-идее в списке не нужны, разве что шаблоны картинок, но тоже легче иначе эту задачу решить):

use Iblock\InheritedProperty\ElementValues;

class \Bitrix\Iblock\Component\Base
{
// ...
protected function modifyElementCommonData(array &$element)
{
   // ...

   // not select on lists
   if (! ($this instanceof \CatalogSectionComponent)) {
      $ipropValues = new ElementValues(
            $element['IBLOCK_ID'], 
            $element['ID']
      );
      $element['IPROPERTY_VALUES'] = $ipropValues->getValues();
   }
без этой строчки заметил, что число запросов в цикле увеличилось... (представьте страницу - показать все)