somik
Но меню не отображается как на демо.
Пункты меню без иконок плюсиков.
А подменю открываются просто слева(см. скриншот).
Посмотрел исходный код демки и своего сайта и понял, что нет блоков div, в которых выводятся эти плюсики.
Самостоятельно интегрировать блоки в логику шаблона menu-treeview.tpl.php не получилось.
Помогите пожалуйста. Поделитесь правильным шаблоном.
<!-- treeview меню --> <?php $this->addJS("templates/{$this->name}/treeview/jquery.treeview.js"); ?> <?php $this->addJS("templates/{$this->name}/treeview/treeview_init.js"); ?> <?php $this->addCSS("templates/{$this->name}/treeview/jquery.treeview.css"); ?> <!-- treeview меню --> <div> <ul class="<?php echo $css_class; ?>"> <?php $last_level = 0; ?> <?php foreach($menu as $id=>$item){ ?> <?php for ($i=0; $i<($last_level - $item['level']); $i++) { ?> </li></ul> <?php } ?> <?php if ($item['level'] <= $last_level) { ?> </li> <?php } ?> <?php if ($is_active) { $css_classes[] = 'active'; } if ($item['childs_count'] > 0) { $css_classes[] = 'folder'; } $onclick = isset($item['options']['confirm']) ? "return confirm('{$item['options']['confirm']}')" : $onclick; $data_attr = ''; foreach ($item['data'] as $key=>$val) { $data_attr .= 'data-'.$key.'="'.$val.'" '; } } ?> <?php if ($item['disabled']) { ?> <span class="item disabled"><?php html($item['title']); ?></span> <?php } else { ?> <a <?php if (!empty($item['title'])) {?>title="<?php echo html($item['title']); ?>"<?php } ?> class="item" <?php echo $data_attr; ?> href="<?php echo !empty($item['url']) ? htmlspecialchars($item['url']) : 'javascript:void(0)'; ?>" <?php if ($onclick) { ?>onclick="<?php echo $onclick; ?>"<?php } ?> <?php if ($target) { ?>target="<?php echo $target; ?>"<?php } ?>> <span class="wrap"> <span class="counter"><?php html($item['counter']); ?></span> <?php } ?> </span> </a> <?php } ?> <?php if ($item['childs_count'] > 0) { ?><ul><?php } ?> <?php $last_level = $item['level']; ?> <?php } ?> <?php for ($i=0; $i<$last_level; $i++) { ?> </li></ul> <?php } ?> </div>
somik, Можно, можно взять виджет с того шаблона, атм есть бесплатная версия instantcms.ru/addons/tseso.html
Олега Васильевича благодарите)
Меню получается без плюсиков.
Просто сбоку появляются подменю. Так что пока не за что его благодарить
Или как тут главное меню справа сделано: instantcms.ru/addons/demo/418
Можно как-то в виджете сделать плюсики?
somik, Можно сделать виджет😊в коробке есть виджет категорий, от него и пляшите)
Емае. А я уже свой виджет написал с выводом дерева категорий))
Кстати а есть уже решение, чтобы превратить в раскрывающееся вертикальное меню это дерево категорий?
В том месте никак не вывести. В том месте можно отключить и вывести НАД или СБОКУ. Но если речь идёт лишь о косметических изменениях, то вам доступен список с классом board_icon. К нему и его дочерним элементам списка можно применить нужные вам стили.А как виджет вывести в том месте?
Хотелось бы вывести немного по-другому и вывести еще подкатегории.
somik, Можно сделать виджет😊в коробке есть виджет категорий, от него и пляшите)
А как виджет вывести в том месте? Виджет же можно выводить НАД основным контентом.
Тема обширная, запросов есть много и разных, но вкратце все выглядит так:
# Подключаем модель компонента. Для запросов в БД неважно какого поэтому берем модель компонента content $model = cmsCore::getModel('content'); #Составляем запрос в БД $model->filterEqual('название поля таблицы', 'искомое значение')->filterEqual('название поля таблицы 2', 'искомое значение 2'); # делаем запрос в БД и записываем результат в переменную $result, варианты на выбор: $result = $model->get('имя таблицы');// получить все записи с этими параметрами $result = $model->getItem('имя таблицы');// получить 1 запись с этими параметрами $result = $model->getFieldFiltered('имя таблицы', 'имя нужного поля');// получить значение конкретного поля
Спасибо получилось. А то я делал немного не правильно. Писал запрос в модели подключенного компонента.
Не понятно только почему для самостоятельного виджета нужно подключать модель какого-то компонента.
Подредактировать свой класс, что бы можно было получить инстанс, закинуть в папку с классами, дальше как обычно:
$model_class = cmsCore::getModel('class');
Ой ой ничего не понял ((
1) В какую папку с классами закидывать? — создать новую для виджета? — по какому адресу ее создавать?
2) Какой файл закидывать? — создать его? — что в него писать?
Это? class modelVaccordion extends cmsModel {… }
3) В файле виджета писать ваш код?
$model_class = cmsCore::getModel('Vaccordion');
Можно создать отдельный шаблон для вывода категорий доски объявлений?
Вот для этого: \templates\default\controllers\content\category_view.tpl.php
При попытке использовать в виджете запрос к базе выдает ошибку 500 на странице.
Не могу понять как правильно определить модель для виджета, который не относится к компоненту.
class widgetVaccordion extends cmsWidget { //отключаем кеширование public $is_cacheable = false; public function run(){ class modelVaccordion extends cmsModel { $categoryes = $this->get('con_board_cats'); } 'categoryes' => $categoryes ); } }
docs.instantcms.ru/dev/widgets
docs.instantcms.ru/dev/models/get
Спасибо большое) Я думал нет доков для движка

Буду сегодня изучать.
Подскажите как мне в моем виджете получить из базы данных информацию?
Как сделать это методами движка, а не самому писать подключение к базе и запросы?
Пример кода приветствуется
somik, для этого есть поля, виджеты
ну как вариант попробовать виджеты.
У меня Инстант 2.7.1
ну iframe так iframe

Какая вообще цель сего мероприятия?
П.Сы. за iframe поисковики сделают бо бо
У меня есть парсер, который парсит в мою табличку в базе.
Надо из нее вывести информацию на сайт. Соответственно надо php-файл подключить.
