Требуется небольшая доработка виджета «Список контента» для версии 2.0.RC

#1 3 февраля 2014 в 10:40
Доброго времени суток, уважаемое сообщество!
Требуется небольшая доработка виджета «Список контента» для версии 2.0.RC.
Использую list_compact.tpl.php По умолчанию там выводится список заголовков:
  1.  
  2. <a href="<?php echo $url; ?>"><?php html($item['title']); ?></a>
  3.  
Пытаюсь вывести вместо этого список созданных мной полей: «Дата» (фомат «date») и «Время» (формат «list» — там список из 10 значений). Пишу так для проверки:
  1.  
  2. <?php
  3. $item['date_zapis'] = date('d M Y', strtotime($item['date_zapis']));
  4. echo $item['date_zapis'];
  5. ?>
  6. <a href="<?php echo $url; ?>"> <?php echo $item['time_zapis']; ?> </a>
  7.  
Выводит построчно даты и вместо значения поля «Время» его индекс. Непонятно.
Надо сделать: так:
  1.  
  2. 03 февраля 2014
  3. 08:00
  4. 08:15
  5. 08:30
  6. 04 февраля 2014
  7. 08:00
  8. 08:15
  9. 08:30
  10. 08:40
  11.  
То есть сгруппированный по датам список значений поля «Время»
И прикрутить к этому аккордеон, т.е. при нажатии на дату раскрывается список значений времени.
Кто возьмётся? Или прям здесь помогите, или в личку, пожалуйста.
#2 3 февраля 2014 в 12:31
Может я ошибаюсь, но это наверно потому что поле Время находиться в cms_con_news_fields а те переменные которых есть в виджете берутся из cms_con_news
#3 3 февраля 2014 в 13:24
Где и как созданных полей и при чем тут конечный шаблон "compact"? Ничего честно говоря не понятно. В любом случае print_r($item['time_zapis']), что там вообще лежит то? То есть что из себя представляет этот самый список из 10 значений?
#4 3 февраля 2014 в 13:51

Где и как созданных полей

Pasha
поля создаются в 2.0 в админке в типах контента

и при чем тут конечный шаблон "compact"?

Pasha
здесь выводим переменные

что из себя представляет этот самый список из 10 значений?

Pasha
1 | 08:00
2 | 08:15
3 | 08:30
4 | 08:45
5 | 09:00
6 | 09:15
7 | 09:30
8 | 09:45
9 | в течение дня
#5 3 февраля 2014 в 13:54


Может я ошибаюсь, но это наверно потому что поле Время находиться в cms_con_news_fields а те переменные которых есть в виджете берутся из cms_con_news

Evanescence

Вот в этом и проблема. Конечно в cms_con_news стоит индекс массива а сам массив в cms_con_news_fields и надо как то достать по индексу значение оттуда.
#6 3 февраля 2014 в 14:13
Думаю надо создать функцию в моделе а потом в www\system\controllers\content\widgets\list\widget.php получить занчение в массив и передать в шаблон, кстати массив $items от туда же передается
#7 3 февраля 2014 в 14:57
Ага, теперь дошло
#8 4 февраля 2014 в 06:17
ау! Неужели ни один гуру не знает как, имея индекс вытащить его значение из массива, находящегося в соседней таблице?!
#9 4 февраля 2014 в 09:43
Специально скачал и установил двойку. По факту все совсем не так как вы описываете, но не суть. Ну вытащили вы из базы список доступных значений конкретного поля, преобразовали все это в массив, вывели кружочком… и что дальше? Кому и зачем может потребоваться конкретно эта информация? Сильно подозреваю, что на выходе вы хотите получить нечто иное.
#10 10 февраля 2014 в 15:26
Справился сам, спасибо.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.