Поиск артикула модификаций для mSearch2

При использовании компонента msOptionPrice2 артикулы могут содержаться внутри модификаций и по умолчанию не индексируются и не смогут попасть в результаты поиска компонента mSearch2
Написал небольшой плагин, который будет добавлять в индекс эти артикулы.

<?php
switch ($modx->event->name) {
   case 'mse2OnBeforeSearchIndex':
       $docId = $resource->get("id");
       $modifications = $modx->getCollection("msopModification", ["rid" => $docId]);
       if ($modifications) {
           $articles = [];
           foreach ($modifications as $modification) {
               $article = $modification->article;
               $articles[] = $article;
           }
           $value = implode(",", $articles);
           
           if (count($articles) > 0) {
                $mSearch2->fields['msop_article'] = 1;
                $resource->set('msop_article', $articles);
           }
       }
       break;
}

Нет комментариев