Отображение виджета "список контента" - поле краткого описания.

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО InstantCMS 2.X
#1 5 января 2018 в 00:02
Здравствуйте, пытаюсь вывести в виджете "Список контента", контент "Каталог работы"

В настройках виджета, в поле краткого описания "вариант объявления":


Но отображает вот так, вместо предустановленных значений "Предлогаю работ" или "Ищу работу " показыает цифры:



Пробовал и так и сяк, всё одно и то же....

В чём проблемма?

Вот скрины поля типе контента (каталоге работ): Вариант объявления:


#2 5 января 2018 в 00:03
Дополнительные скриншоты, низ поля типа контента:
#3 5 января 2018 в 00:04
Вот виджет "Список контента":




Благодарю.
#4 5 января 2018 в 00:12
Для вывода "нетекстовых" полей надо вносить такие правки
#5 5 января 2018 в 00:21


Для вывода "нетекстовых" полей надо вносить такие правки

Loadырь

Так у меня получается текстовое поле...

Вот так выглядит в списке:


Вот так в саомй записи:
#6 5 января 2018 в 00:26


Для вывода "нетекстовых" полей надо вносить такие правки

Loadырь

А… Текстовое поле, это именно поле текста, описание, краткое описание и тд...

По ссылке выше...
Надо открытй те же файлы на сайте, и вставить в них код прописанный?
На примере первого по ссылке, открываем system/controllers/content/widgets/list/widget.php
Находим 28 строку и вставляем туда код:
  1. $category = false;
  2. }
  3.  
  4. + // Получаем поля для данного типа контента
  5. + $fields = $model->getContentFields($ctype['name']);
  6. +
  7. if ($dataset_id){
  8.  
  9. $dataset = $model->getContentDataset($dataset_id);
  10. @@ -100,9 +103,17 @@ public function run(){
  11. list($ctype, $model) = cmsEventsManager::hook("content_list_filter", array($ctype, $model));
  12. list($ctype, $model) = cmsEventsManager::hook("content_{$ctype['name']}_list_filter", array($ctype, $model));
  13.  
  14. - $items = $model->
  15. - limit($limit)->
  16. - getContentItems($ctype['name']);
  17. + $items = $model->limit($limit)->getContentItems($ctype['name'], function ($item, $model, $ctype_name, $user) use ($ctype, $hide_except_title){
  18. +
  19. + $item['ctype'] = $ctype;
  20. + $item['ctype_name'] = $ctype['name'];
  21. + $item['is_private_item'] = $item['is_private'] && $hide_except_title;
  22. + $item['private_item_hint'] = LANG_PRIVACY_HINT;
  23. +
  24. + return $item;
  25. +
  26. + });
  27. +
  28. if (!$items) { return false; }
  29.  
  30. list($ctype, $items) = cmsEventsManager::hook("content_before_list", array($ctype, $items));
  31. @@ -116,6 +127,7 @@ public function run(){
  32.  
  33. return array(
  34. 'ctype' => $ctype,
  35. + 'fields' => $fields,
  36. 'hide_except_title' => $hide_except_title,
  37. 'teaser_len' => $teaser_len,
  38. 'image_field' => $image_field,
Верно?
#7 5 января 2018 в 00:27
#8 5 января 2018 в 00:28

"нетекстовых"

Loadырь
Имел в виду все поля, кроме полей типа "Текст" и "Текст HTML".
#9 5 января 2018 в 00:30


"нетекстовых"

Loadырь
Имел в виду все поля, кроме полей типа "Текст" и "Текст HTML".

Loadырь

Я ответил чуть выше тут.
#10 5 января 2018 в 00:33

Верно?

@Aliaksandr
Не совсем. Открываете файл system/controllers/content/widgets/list/widget.php, и в нём зелёные строки добавляете, а красные удаляете. При этом надо ориентироваться не на номера строк, а на расположение правок, так как могли быть изменения в 2.9.0 и номера строк могут не совпадать. Также при добавлении смотрите, чтобы плюсы в начале строки не попали в ваш файл.
#11 5 января 2018 в 01:48


Верно?

@Aliaksandr
Не совсем. Открываете файл system/controllers/content/widgets/list/widget.php, и в нём зелёные строки добавляете, а красные удаляете. При этом надо ориентироваться не на номера строк, а на расположение правок, так как могли быть изменения в 2.9.0 и номера строк могут не совпадать. Также при добавлении смотрите, чтобы плюсы в начале строки не попали в ваш файл.

Loadырь

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