Как сделать виджетах так как на скрине?
Доработать виджет ICMS2
ЕСТЬ РЕШЕНИЕ
ЗАКРЫТО
#1
8 мая 2014 в 20:13
#2
8 мая 2014 в 21:12
system\controllers\content\widgets\list\options.form.php строку 60
Заменить на
templates\default\controllers\content\widgets\list\ выбираем нужный файл и дальше думаю понятно:
'title' => LANG_WD_CONTENT_LIST_DETAILS, )),
'title' => 'Показать автора', )), 'title' => 'Показать дату', )), 'title' => 'Показать комментарии', )),
<?php if($show_author) { ?>ИМЯ АВТОРА<?php } ?>
#3
8 мая 2014 в 21:14
спасибо, буду пробовать!
Сегодня в 07:35
#4
10 мая 2014 в 21:01
Evanescence, что касается вывода чекбоксов в настройках виджета — сработало, чекбоксы появились. А вот что касается правки виджета то тут не понял как правильно нужно.
В файле system\controllers\content\widgets\list\options.form.php сделал так:
В файле templates\default\controllers\content\widgets\list\list_tiles_big.tpl.php
всё равно не получается включать и отключать по отдельности показ автора, даты, комментарии,
'title' => LANG_WD_CONTENT_LIST_DETAILS, )), 'title' => 'Показать автора', )), 'title' => 'Показать дату', )), 'title' => 'Показать комментарии', )),
<?php if ($is_show_details) { ?> <div class="details"> <?php if ($is_show_author) { ?> <span class="author"> <a href="<?php echo href_to('users', $item['user']['id']); ?>"><?php html($item['user']['nickname']); ?></a> <?php if ($item['parent_id']){ ?> <?php echo LANG_WROTE_IN_GROUP; ?> <a href="<?php echo href_to($item['parent_url']); ?>"><?php html($item['parent_title']); ?></a> <?php } ?> </span> <?php } ?> <?php if ($is_show_date) { ?> <span class="date"> <?php html(string_date_age_max($item['date_pub'], true)); ?> </span> <?php } ?> <?php if ($is_show_comments) { ?> <?php if($ctype['is_comments']){ ?> <span class="comments"> <a href="<?php echo $url . '#comments'; ?>" title="<?php echo LANG_COMMENTS; ?>"><?php echo intval($item['comments']); ?></a> </span> <?php } ?> <?php } ?> </div> <?php } ?>
#6
13 января 2015 в 18:11
Надо получить значение этих опции в system\controllers\content\widgets\list\widget.php например так:всё равно не получается включать и отключать
$show_author = $this->getOption('show_author');
#7
13 января 2015 в 18:34
вот кусок кода из system\controllers\content\widgets\list\widget.php
все равно не работает
<?php class widgetContentList extends cmsWidget { public function run(){ $ctype_id = $this->getOption('ctype_id'); $dataset_id = $this->getOption('dataset'); $cat_id = $this->getOption('category_id'); $image_field = $this->getOption('image_field'); $teaser_field = $this->getOption('teaser_field'); $is_show_details = $this->getOption('show_details'); $is_show_author = $this->getOption('show_author'); $is_show_date = $this->getOption('show_date'); $is_show_comments = $this->getOption('show_comments'); $style = $this->getOption('style', 'basic'); $limit = $this->getOption('limit', 10); $substr_title = $this->getOption('substr_title', 50); $substr_teaser = $this->getOption('substr_teaser',80);
#8
13 января 2015 в 18:47
А потом передать в шаблон
'ctype' => $ctype, 'image_field' => $image_field, 'teaser_field' => $teaser_field, 'is_show_details' => $is_show_details, 'is_show_author'=>$is_show_author, // Вот так каждую переменную, передайте в шаблон 'style' => $style, 'items' => $items );
#9
13 января 2015 в 18:50
т.е. в сам шаблон виджета?
#10
13 января 2015 в 19:11
всё разобрался — работает Evanescence, спасибо за терпение и подсказки
#11
13 января 2015 в 19:12
SE7EN, в файле system\controllers\content\widgets\list\widget.php посмотрите в самом внизу, там переменные передается шаблону
#12
13 января 2015 в 19:13
SE7EN, в файле system\controllers\content\widgets\list\widget.php посмотрите в самом внизу, там переменные передается шаблону
Понял, спасибо ещё раз