ProcessorPlugin для SearchAPI в Drupal с поддержкой «Связать это поле с его элементом» в представлениях - PullRequest
0 голосов
/ 27 марта 2019

Я написал обработчик API пользовательского поиска для API поиска Drupal, который работает в соответствии с требованиями.Метод addFieldValues ​​выглядит следующим образом:

   public function addFieldValues(ItemInterface $item) {

       $original_entity = $item->getOriginalObject()->getValue();
       $nid = $original_entity->id();

       $nids = \Drupal::entityQuery('node')
         ->condition('status', 1)
         ->condition('type', 'kwe')
         ->condition('field_personen.entity:paragraph.field_person.target_id', $nid)
         ->execute();

       if ($nids) {
         $nodes = \Drupal::entityTypeManager()
           ->getStorage('node')
           ->loadMultiple($nids);

           $fieldsForProp = $this->getFieldsHelper()
             ->filterForPropertyPath($item->getFields(), NULL, 'person_kwe');

           foreach ($fieldsForProp as $field) {
             foreach ($nodes as $node) {
               $field->addValue($node, 'person_kwe');
             }
           }
       }
     }

Моя проблема: Когда я отмечаю 'Связать это поле с его элементом' в представлениях, индексированные данные (например, название узла) не являютсяпривязан к предмету правильно.Зачем?Что мне нужно сделать, чтобы получить эту работу?

...