Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”

0 Пользователей и 1 Гость просматривают эту тему.

*

31rus

  • *
  • 46
  • +2/-0
    • Просмотр профиля
Добрый день, всем.
Туплю несколько дней над проблемой.
Нужно вывести на главной странице сайта только новости с определенным сюжетом.
На ум приходит использование news related_links() но изначально мы знаем только сюжет но не id новости от которой можем оттолкнуться.

Вкратце смысл задачи, есть сайт с доменами 3 уровня, на каждом из них есть акции которые могут повторятся на разных доменах, что бы не создавать в каждом домене отдельную новость, создаем на главном домене 1 новость и полем множественный выпадающий список выбираем привязку (так же/или как и сюжеты новости).

накидал макрос, но он не работает:(

public function subject ($subject) {
  $pages = new selector('objects');
           $pages->types('object-type')->id(116); // справочник
  $i = 0;
  foreach($pages as $page){
      $subject = $page->getValue('subject');
      if (!empty($subject)) {

  foreach ($subject as $element) {
      $name = umiObjectsCollection::getInstance()->getObject($element)->getName();
      if ($name == $subject) {
  $require_id[$i] = $page->id;
  $require_name[$i] = $page->name;
                  $i++;
      }  
          }
      }
  }
  for ($a = 0; $a < $i; $a++) {
      $item_arr['attribute:id']=$require_id[$a];
      $item_arr['node:value']=$require_name[$a];
      $items[] = $item_arr;
  }
  $block_arr['items']['nodes:item'] = $items;
  return $block_arr;
}
Может я уже смотрю на проблему однобоко и есть более простое решение?

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
То есть у вас есть общая новостная лента на одном из сайтов (все ваши сайты сделаны на одной лицензии umi, по принципу мультисайтовой системы)

Вы хотите выводить некоторые новости на других сайтах (других доменах в этой же системе umi)

Для этого, вы хотите помечать новости элементами выпадающего списка со множественным выбором и впоследствии фильтровать новости по данному полю на конкретных страницах.

Я правильно вас понял?

*

31rus

  • *
  • 46
  • +2/-0
    • Просмотр профиля
Совершенно верно.

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
попробуйте usel? я думаю он решит все ваши проблемы, почитайте про него и составте файл который будет возвращать выборку страниц, типа "новость", у которых в поле "ваше поле со списком множественного выбора" стоит значение "id значение которое вас интересует"

P.S. про usel можно почитать тут