Получение записей

InstantCMS 2.X
#1 8 апреля 2025 в 20:08

Всем привет. Подскажите как получить записи выбранного типа контента. Или всем списком или в виде поиска. Начинаем указывать название записи и появляются записи, выбираем именно ту которую нужно и сохраняем её id. Это касается в компоненте в backend.

Категории получаю так.

  1. new fieldList('ctype_id', array(
  2. 'title' => 'Тип категории',
  3. 'default' => 1,
  4. 'generator' => function($ctype) use ($content_model) {
  5. $tree = $content_model->getContentTypes();
  6. $items = [];
  7. if ($tree) {
  8. foreach ($tree as $item) {
  9. $items[$item['id']] = $item['title'];
  10. }
  11. }
  12. return $items;
  13. },
  14. 'visible_depend' => array('tip_ctypes' => array('hide' => array('content', '')))
  15. )),
  16.  
  17. new fieldList('category_id', array(
  18. 'title' => 'Под категории',
  19. 'parent' => array(
  20. 'list' => 'ctype_id',
  21. 'url' => href_to('content', 'widget_cats_ajax')
  22. ),
  23. 'generator' => function($item, $request) use ($content_model) {
  24. $list = ['' => ''];
  25. $ctype_id = is_array($item) ? array_value_recursive('ctype_id', $item) : false;
  26. if (!$ctype_id && $request) {
  27. $ctype_id = $request->get('ctype_id', 0);
  28. }
  29. if (!$ctype_id) {
  30. return $list;
  31. }
  32. $ctype = $content_model->getContentType($ctype_id);
  33. if (!$ctype) {
  34. return $list;
  35. }
  36. $cats = $content_model->getCategoriesTree($ctype['name']);
  37. if ($cats) {
  38. foreach ($cats as $cat) {
  39. if ($cat['ns_level'] > 1) {
  40. $cat['title'] = str_repeat('-', $cat['ns_level']) . ' ' . $cat['title'];
  41. }
  42. $list[$cat['id']] = $cat['title'];
  43. }
  44. }
  45. return $list;
  46. },
  47. 'visible_depend' => array('tip_ctypes' => array('hide' => array('content', '')))
  48. )),
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.

Похожее в блогах

Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.