Re: Меню в Монстра
Тут как я понимаю нет блоков меню?
что значит блоки меню ?
Есть сниппеты, которые заменили блоки к тому же добавились еще и чанки
Re: Меню в Монстра
Не так написал.....
Меню ( например: topmenu, sidemenu, side2menu)
<?php getSiteMenu('название'); ?>
Re: Меню в Монстра
kromverk, Монстра может админить одно основное меню.
Использовать его в шаблонах вот так
<ul class="nav"> <?php echo Menu::get(); ?> </ul>
Различные вариации боковых меню или еще каких то, записывать в html/php/js виде в чанках
Например боковое меню для этого раздела http://monstra.org/documentation сделано так:
Чанк: documentation-index
<?php $uri = Uri::segments(); ?> <ul> <li class="nav-header">Getting started</li> <li <?php if ($uri[1] == 'installation') echo 'class="active"'; ?>> <a href="<?php echo Site::url(); ?>documentation/installation">Installation</a> </li> <li <?php if ($uri[1] == 'standards') echo 'class="active"'; ?>> <a href="<?php echo Site::url(); ?>documentation/standards">Coding standards</a> </li> </ul>
Подключение чанка в шаблоне:
<?php Chunk::get('documentation-index'); ?>
Re: Меню в Монстра
млин так не удобно в TemplateCMS было лучше. Реально плагин для администрирования разных меню сделать?
Re: Меню в Монстра
Почему "чанки" - костыли
Для примера:
Сайт http://rem4life.ru/price
правый блок на странице Популярное на сайте с каким-то ссылками
Чанк: right-menu
<ul> <li><a href="/faq">Часто задаваемые вопросы и ответы на них</a></li> <li><a href="/">Наши преимущества</a></li> </ul>
Для блока с текстом
Ремонт и отделка квартир в Москве и Московской области
Чанк например: hero-block
Re: Меню в Монстра
Chunk = http://translate.google.com/#en|ru|Chunk
Snippet = http://translate.google.com/#en|ru|Snippet%20code
Re: Меню в Монстра
согласен с JINN - обычному "юзвергу" не осилить, т.е. дополнительная поддержка, на это большинство не пойдет
Re: Меню в Монстра
+1. это изврат.
чем не понравилось как в tcms2?
Пишу плагины под заказ, конвертирую шаблоны под Монстра - пишите на email через ссылку в профиле.
Re: Меню в Монстра
в монстре по моему все изврат.. в тцмс было намного удобнее...
Re: Меню в Монстра
fr1zzer, хотите сказать, что она уже оправдывает своё название?
Пишу плагины под заказ, конвертирую шаблоны под Монстра - пишите на email через ссылку в профиле.
Re: Меню в Монстра
fr1zzer, хотите сказать, что она уже оправдывает своё название?
название тут не при чем, просто тут обычные пользователи не смогут разобраться.. им нужно будет все готовое... в тцмс любому было легко сделать себе: плагин, шаблон и т.д., а тут более запутано(
Re: Меню в Монстра
что за вброс ?!
Monstra основные особенности(изменения) системы:
ООП подход
Новый Plugins API.
Улучшена система хуков с возможностью задавать приоритет событиям/экшенам.
Новая система локализации плагинов с возможностью плейсхолдеров. Транслейты подгружаются в единый глобальный словарь. словари размещать необходимо в папке с плагином также как и раньше в /languages/ но именовать таким образом, пример: en.lang.php ru.lang.php
Возможность подгрузи css и js файлов. Monstra заботится про их сжатие(minify)!
Возможность управлением навигацией админки.
Плагины имеют своеобразную MVC архитектору. Есть контроллеры, вьюхи и модели
Улучшена архитектура плагинов. Структура папок плагина такая (Sandbox Plugin):
sandbox
sandbox.plugin.php
sandbox.admin.php
install
sandbox.install.php
sandbox.uninstall.php
sandbox.manifest.xml
languages
en.lang.php
ru.lang.php
views
frontend
backend
Shortcodes API
Примеры:{shortcode}
{shortcode parameter=value"}
{shortcode parameter=value"}Enclosed Content{/shortcode}
Хелперы - статические классы, которые подгружаются авто загрузчиком там где они необходимы! С помощью хелперов можно сделать проект на Monstra любой сложности!
Список хелперов:
Agent - хелпер обеспечивает простой способ определить тип устройства, который сделал запрос.
Arr - хелпер для работы с массивами
Alert - хелпер для работы с выводом сообщений на странице
Benchmark - хелпер для помощи в отладке
Cache - хелпер файловой системы кеширования(ключ=значение) с поддержкой неймспейсов.
Cookie - хелпер для работы с куками
Curl - хелпер curl
Captcha - хелпер простой математической капчи из коробки
Date - хелпер для работы с датами.
Directory - хелпер для работы с директориями.
File - хелпер для работы с файлами.
Form - хелпер для работы с формами.
HTML - хелпер для работы с html.
Inflector - хелпер для преобразования/форматирования текста.
Image - хелпер для работы с изображениями. Позволит создавать галереи для еще проще.
Minify - хелпер для сжатия css и html
Number - хелпер для работы с числами
Notification - хедпер реализует "Flash" сервис для работы с временными сообщениями системы
Security - хелпер экранирования данных
Session - хелпер для работы с сессией
Request/Responce - хелперы для обработки запросов
Uri - хелпер для работы с URI
Url - хелпер для работы с ссылками
Valid - хелпер для валидации данных
Text - хелпер для работы с текстом
Zip - хелпер для работы с zip файлами.
Новый обработчик исключений и ошибок c логированием. Это повысит качество разработки плагинов для Monstra.
Добавлена новая роль - "Редактор". Редактору доступен менеджер страниц, файлов и возможность редактирования своего профиля
В целях безопасности тег php отключен по умолчанию. Для включения необходимо в Defines константу MONSTRA_EVAL_PHP поставить в значение true
Боксовые плагины теперь не отображаются во вкладке установленных плагинов.
Системный редактор из коробки и установленый markItUp! редактор
Возможность делать бекап выборочных папок: storage, plugins, themes, uploads.
Автогенерация карты сайта
Клонирование страниц
Статус страницы: Опубликованная или Черновик
Тема админки теперь располагается в /admin/themes/default/ замена ее на свой вариант админки проще простого!
Улучшена документация проекта. К каждой функции идет небольшой пример!
Улучшена XMLDB API. Состоит из классов: XML, DB, Table. Функция select() теперь может выбирать конкретные поля (как selectXMLfileds - удалена) и возвращает в результате массив! Monstra состоит из XML таблиц.
Новая тема оформления сайта по умолчанию. @css based on Bootstrap, from Twitter
Новые стандарты оформления исходного когда именования папок и файлов.
Файлы заливаются теперь в публичную папку /public/uploads/
Все данные в Monstra хранятся в папке /storage/ а xmldb в /storage/database/
Плагин "Песочница" по умолчанию в дистрибутиве CMS
Сниппеты заменили блоки и имеют расширение .snippet.php (глобальные блоки)
Появились чанки .chunk.php (локальные блоки)
Плагины добавляются в карту сайта!
Появилась возможность восстановить пароль
Новый боксовый плагин Information
Улучшен инсталятор системы
Новый дизайн и структура админки. Глобальные улучшения в юзабилити админки и боксовых плагинов.
Добавлена возможность настраивать Robots META Tag для каждой страницы индивидуально!
Улучшен менеджер меню сайта. Появилась возможность добавлять страницы
Улучшена производительность системы. Монстра работает быстрее Template CMS
Улучшен файловый менеджер. Множество фиксов безопасности. Добавлена возможность просмотра изображений в лайтбоксе
Монстра безопасней, быстрее и стабильней Template CMS
еще одна фича ?! Coming soon!
Bob Salsburg
@monstra_cms Looks awesome! So much more than T-CMS ever was.
Mature to with the roles and MarkItUp is what I meed for my users.
-----------
Монстра - говно, потому что менеджер меню админит одно(сейчас) меню ?!
Re: Меню в Монстра
причём здесь вброс?
это первое впечатление после открытия админки монстры людьми, юзающими тцмс2.
и не сказать, что приятное, поэтому на данный факт обратили внимание.
даже в тцмс2 пришлось допиливать вложенные меню - соответственно в монстре хотелось бы видеть поддержку как минимум вложенных меню.
Пишу плагины под заказ, конвертирую шаблоны под Монстра - пишите на email через ссылку в профиле.
15 2012-04-16 07:37:31 (2012-04-16 07:57:31 отредактировано Малыйсайт.рф)
Re: Меню в Монстра
по большому счету, чанки и есть костыли. Что не получилось сделать стандартными средствами CMS, вставляют код через чанки.
Кстати, да, согласен: редактировать для заказчика не представляется возможным. Но, если использовать чанки в другом ключе, то без них не обойтись. Пример:
Ответьте себе на такой вопрос: на сайте нужно иметь три разных шаблона для разных типов страниц, например, indexTemplate.php, contactTemplate.php и homeTemplate.php, будете ли Вы шапку сайта (которая одинакова во всех шаблонах) три раза прописывать в этих темплейтах (а потом, если нужно внести исправления, править в трёх местах одно и то же) или же воспользуетесь дополнительным файлом header.php и будете подключать его в начале каждого template? И тогда править код придётся только в одном месте. Если Вам по душе второй вариант, то как раз здесь чанк header придёт Вам на помощь.
Вы конечно, можете, сказать, что header можно оформить в виде сниппета. Это верно. Только разница в том, что сниппеты глобальны для всего сайта, а значит, если у Вас установлены две темы оформления, то возникнет конфликт: первая тема использует header-snippet, и второй он тоже нужен. Так вот тут точно без чанков не обойтись, т.к. чанки подключаются только из папки активной темы, т.е. они локальны в пределах темы (также как и xxxTemplate.php).
Как думаете, справедлив такой вывод: чанки в разы облегчают жизнь разработчику, но при этом совершенно не подходят для конечного пользователя (т.к. содержат в себе html-код). А значит, нужно использовать их для тех же целей, что и require, include, а не для того, чтобы делать виджеты для конечного пользователя.
Вывод: нужно реализовать поддержку виджетов!
Огромное спасибо Сергею за реализацию чанков - жизнь стала быстрее и проще!
UPD: JINN, увидел Ваш UPD, "сниппеты==костыли", понял, что Вы и так в этом разбираетесь.
По теме с меню: Вложенное многоуровневое меню, а также боковое меню, которое появляется в зависимости от того, на каком разделе сайта находишься — нужно всем. И даже очень нужно. И если в TCMS2 его можно было реализовать благодаря поддержке нескольких меню в системе (хотя это не было просто), то в монстре так уже не сделаешь, это серьёзный минус. Если многоуровневое меню всё-таки реализовать, правильных разработчиков сайтов, которые будут фанатами монстры резко прибавится.
Re: Меню в Монстра
Малыйсайт.рф, ок. мне понятна ваша позиция.
17 2012-04-25 07:21:15 (2012-04-25 07:25:16 отредактировано olgnet)
Re: Меню в Монстра
Насколько я понял чанки сделаны в первую очередь сделать более функциональное и гибкое меню(я пару раз создавал тему на форуме TCMS где мне требовалось именно это), но такое решение и правда подходит только для разработчиков. Нужно сделать так - есть один шаблон(чанк) где хранится общий шаблон меню и две переменные, в одной хранится вид пункта меню в неактивном состоянии например <li>$name</li>, в другой в активном <li class="active">. Но в чанках это допиливать глупо, это нужно делать именно в плагине меню, после небольшой доработки это позволит делать меню любой сложности, и например можно делать меню с помощью таблиц, чего не было в tcms, ну и главное всё это будет редактироваться из админки рядовым пользователм. Конечно реализовать это можно и по другому, я просто предложил...
Re: Меню в Монстра
Плюсую. Не продуманно сделано меню. В первую очередь, надо думать о Заказчиках(пользователях), которые хотят без посторонней помощи администрировать свой сайт, а лазить в php/html это не для них.
20 2012-08-06 06:14:09 (2012-08-06 06:16:40 отредактировано anderen)
Re: Меню в Монстра
Приветствую! Меня интересует как можно реализовать вложенное меню на этом движке.
<ul> <li><a href="/">Главная</a> ... <li><a href="/faq">FAQ Samsung Gio S5660</a> <ul> <li><a href="/faq/kak_ptoshivat">Как прошивать</a></li> <li><a href="/faq/backup">Как восстановить систему</a></li> </ul></li> <li><a href="/proshivki">Прошивки</a></li> </ul>
Может есть какой то плагин или кто то пишет его буду благодарен за помощь
Re: Меню в Монстра
жалко, что в цмс нет возможности создавать насколько меню, а также вложенные меню, а также возможность привязки контексного меня в зависимости от страницы. Может существует у кого-нибудь готовый плагин. Считаю, что это самый важный плагин. Если его нет, может сам начну делать. Спасибо.
Re: Меню в Монстра
жалко, что в цмс нет возможности создавать насколько меню, а также вложенные меню, а также возможность привязки контексного меня в зависимости от страницы.
...
Вот это очень здравая мысль - привязка меню, и не только меню, а блоков тоже, к конкретным страницам.
Лично я делаю сайты только для себя, поэтому ручное редактирование меню меня вполне устраивает. Вот только мне нужно к каждой конкретной странице конкретное сочетание меню и блоков в сайбаре...
В TCMS я делал поэтому много шаблонов, о неудобствах такого метода уже сказано. Думал, в Monstra с этим будет удобнее, но вот вижу что не очень.
Для меня (и, подозреваю, что не только для меня) суперудобно было бы так.
Открываешь Создать/Редактировать страницу...
Видишь там, кроме того что уже есть, опции:
- создать блок дополнительного контента к этой странице ,
- создать меню к этой странице...
Созданные здесь блоки и меню выводятся только с этой страницей, причём в любом месте любого шаблона, куда вставишь соответствующие им {........} или <?php ......... ?> - я не программист, боюсь ошибиться в терминах...
И лучше - если эти блоки и меню можно будет создавать не в единственном экземпляре.
Всё))).
Я видел примерно такое в одной самописной CMS. Может, и здесь это возможно реализовать... Подумайте.
По поводу чанков - да очень хорошая вешь, шаблоны удобно формировать, удобства реально добавляет. Респект разработчику! Но это не решает всех насущных проблем.
Re: Меню в Монстра
жалко, что в цмс нет возможности создавать насколько меню
В Монстре 2 можно будет создавать менюшек столько сколько нужно)
Можете скачать бету и протестировать этот функционал.
Re: Меню в Монстра
жалко, что в цмс нет возможности создавать насколько меню
В Монстре 2 можно будет создавать менюшек столько сколько нужно)
Можете скачать бету и протестировать этот функционал.
Это приятно, что так будет, хотя мне это (во всяком случае пока) не принципиально. Вот если бы сделать привязку модуля к конкретной странице как я описал выше... )))) Впрочем, конечно, Вам виднее, у Вас могут быть другие задачи...
Re: Меню в Монстра
Пытаюсь реализовать выпадающее меню:
Исходные страницы:
- Наши аптеки - /apteki
-- Аптека 1 - /apteki/apteka1
Есть два меню - основное и меню apteki - с подстраницами раздела "Наши аптеки"
В шаблоне пытаюсь сделать проверку что в url есть слово apteki и выводилось второе меню
<?php if(Url::exists('apteki')) Menu::get('apteki'); ?>
Но так не работет. Логика вроде верная.
В этот же скрипт хочу добавить проверку на другие разделы и вывод соответствующего подменю.