Копия виджета список контента

InstantCMS 2.X
#1 12 июня 2021 в 14:27
Всем привет. Понадобилось добавить в настройки виджета List пару полей. И что бы не править виджет движка, решил скопировать данный виджет с другим названием. Всё работает кроме новой опции Поля. Не хотят сохранятся.Всё остальное сохраняется. Предполагаю, что они как то связанны с именем List. Так ли это? Или я что то где то упустил?
#2 12 июня 2021 в 17:32


Всем привет. Понадобилось добавить в настройки виджета List пару полей. И что бы не править виджет движка, решил скопировать данный виджет с другим названием. Всё работает кроме новой опции Поля. Не хотят сохранятся.Всё остальное сохраняется. Предполагаю, что они как то связанны с именем List. Так ли это? Или я что то где то упустил?

Lora
Похоже вы правы. Насколько я сталкивался с именами шаблонов то при создании копии default_list.tpl.php
1. Змена слова default на имя типа контента привязывает этот шаблон к типу контента по умолчанию
2, При создании копии шаблона надо добавлять слово после list — default_list_имя.tpl.php
#3 12 июня 2021 в 20:18
vikont, это в шаблонах контента. Я тут про другое. Сам виджет работает. Не работает конкретная опция. При чём всё остальное работает.
#4 12 июня 2021 в 22:39


vikont, это в шаблонах контента. Я тут про другое. Сам виджет работает. Не работает конкретная опция. При чём всё остальное работает.

Lora
Не думаю, что логика на виджетах будет иной…
#5 13 июня 2021 в 00:19

Купил болгарку, но что-то не то с диском, не хочет нержавейку резать.

Lora

Да, я вчера абрикосы жрал вместе с косточками, зубы поломал.

vikont

Я про диск от болгарки, причем здесь абрикосы?

Lora

Клянусь, это одно и то же.

vikont
#6 13 июня 2021 в 11:27

Предполагаю, что они как то связанны с именем List.

Lora
С именем List связано только одно: верстальщик понимает, что этот файл выводит список (не важно чего и какой, просто список). То что у вас не сохраняются новые поля, может быть связано с другим. Все поля в виджетах сохраняются в опциях данного виджета (если не указано иное). И тут есть два варианта:
1. Данные не сохраняются, так как нет такой ячейки в базе данных.
2. Данные сохраняются, но вы не там их ищете для вывода в шаблоне.
Код многое бы упростил в объяснениях.
#7 13 июня 2021 в 11:41

Данные не сохраняются, так как нет такой ячейки в базе данных.

Loadырь
Ячейки нет. Так как это опции.И сохраняются они в ячейки options. Таблица: cms_widgets_bind. Все.
Вот опции стандартного виджета

  1.  
  2. ---
  3. widget_type: list
  4. ctype_id: 5
  5. category_id: 2
  6. dataset: 0
  7. relation_id: 0
  8. auto_group: null
  9. limit: 3
  10. show_fields:
  11. 5:
  12. title: 1
  13. kind: null
  14. source: null
  15. teaser: null
  16. content: 1
  17. featured: null
  18. notice: null
  19. photo: null
  20. href: null
  21. category: null
  22. date_pub: null
  23. user: null
  24. comments: null
  25. show_fields_options:
  26. 5:
  27. title:
  28. label_in_list: none
  29. wrap_type: auto
  30. wrap_width:
  31. kind:
  32. is_autolink: null
  33. label_in_list: none
  34. wrap_type: auto
  35. wrap_width:
  36. source:
  37. label_in_list: none
  38. wrap_type: auto
  39. wrap_width:
  40. teaser:
  41. is_html_filter: null
  42. teaser_len:
  43. show_show_more: null
  44. label_in_list: none
  45. wrap_type: auto
  46. wrap_width:
  47. content:
  48. is_html_filter: null
  49. teaser_len: 200
  50. show_show_more: null
  51. label_in_list: none
  52. wrap_type: auto
  53. wrap_width:
  54. featured:
  55. label_in_list: none
  56. wrap_type: auto
  57. wrap_width:
  58. notice:
  59. is_html_filter: null
  60. teaser_len:
  61. show_show_more: null
  62. label_in_list: none
  63. wrap_type: auto
  64. wrap_width:
  65. photo:
  66. size_teaser: small
  67. label_in_list: none
  68. wrap_type: auto
  69. wrap_width:
  70. href:
  71. label_in_list: none
  72. wrap_type: auto
  73. wrap_width:
  74. image_field:
  75. teaser_field:
  76. teaser_len:
  77. show_details: null
  78.  
А вот копии

  1. ---
  2. widget_type: list
  3. ctype_id: 6
  4. category_id: 2
  5. dataset: 0
  6. relation_id: 0
  7. auto_group: null
  8. limit: 10
  9. image_field:
  10. teaser_field:
  11. teaser_len: 200
  12. show_details: null
Как видите "новых" полей нет.

Код многое бы упростил в объяснениях.

Loadырь
Какой код? Код идентичен стандартному. Помененно лишь название папок и соответственно классов.
Эти поля именно не сохраняются. При редактировании виджета. выбираю категорию
skr.sh/s8X6gVAp0CG
Припереходе в Поля
skr.sh/s8XQMufwM9D
Но при сохранении. Их нет.
skr.sh/s8XecGmS7Ft
#8 14 июня 2021 в 21:51
Lora, когда-то тоже репу чесал. Сейчас люди добрые носом ткнули.
Сделайте клон этого файла. В названии файла и класса используйте системное имя своего виджета, обновите события
#9 15 июня 2021 в 14:05
Олег Васильевич я, спасибо, мил-человек). Значит правильно думал, что к названию привязан. Но искал не там).
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.