Современная, быстрая и удобная система управления сайтом

MaxSite CMS 0.90

Версии (релизы)Комментарии: 19Просмотров: 23892

Данная версия открывает новый этап развития системы. Её выпуск приурочен к седьмой годовщине MaxSite CMS.

Фактически это новая линейка системы, которая лишь частично совместима со старыми версиями. По этой причине, я советую перед обновлением сайта, вначале внести необходимые изменения в свой шаблон. С 99% вероятностью он потребует адаптации.

Вместе с тем, я хочу особо подчеркнуть, что обновление MaxSite CMS не вносит изменений в базу данных. Это означает, что если по какой-то причине обновление не устраивает, то всегда можно загрузить старую версию. Все записи, рубрики и прочие данные останутся в целости и сохранности.

Работа над новой версией шла несколько месяцев. Было принято несколько важных решений.

Теперь вся разработка будет происходить только на Гитхабе. Это требует от разработчиков изучения основ git'а. Чтобы помочь новичкам, Юра написал пошаговое руководство для желающих поучаствовать в разработке MaxSite CMS.

Разработчиков MaxSite CMS пока немного. Основные участники Юра (Cuprum) и Илья Земсков (vimruler). Остальные больше участвуют просто в дискуссиях.

Второе принципиальное решение — подчистка всех старых «хвостов». Это важно, поскольку WEB развивается и появляются новые возможности, о которых пять лет назад можно было только мечтать (в основном из-за новых версий браузеров). Старые «хвосты» были нужны раньше, но теперь они только тормозят развитие системы. Всё это потребовало больших переделок в ядре, плагинах и системе работы шаблонов. И именно поэтому произошла потеря совместимости. Взамен этого, конечно же, мы предлагаем больше новых возможностей.

Шаблоны

Основное изменение — шаблон должен быть «вещью в себе». Если кто помнит, то давным-давно default-шаблон был выделен как особый, который хранил type-файлы, которые можно было использовать в других шаблонах. Это значительно упростило создание шаблонов, но сильно усложнило поддержку самого Default, поскольку любой «чих» мог привести неверной работе других шаблонов. Тогда появилась концепция D2 и специальный shared-каталог, куда и были перемещены все зависимые файлы (версия 0.79).

Со временем появилась концепция D3, которая исправляет недостатки D2 и добавляет вебмастеру новую степень свободы. В MaxSite CMS 0.90 используется дальнейшее развитие D3 (условно D4), которая призвана полностью разрешить все спорные зависимости от shared-файлов. Одним из больных проблемных мест было использование встроенного css-фреймворка style-all-mini.css. В D3 я пытался предложить варианты решения, но в D4 всё ещё круче — его просто нет. Точно также решена проблема с файлами функций шаблона. Все эти потенциально проблемные места перекочевали на уровень шаблона.

Таким образом, в shared-каталоге остался только тот код, который действительно может быть общим от шаблона к шаблону.

Что касается type-файлов, то возможность их кастомизации была сильно увеличена за счет создания своего HTML/PHP-шаблонизатора. Это позволило решить старые проблемы с формами, комментариями и т.п., то есть с тем кодом, который использует жуткую смесь php и html.

Новый Default-шаблон теперь является обычным рядовым шаблоном. В отличие от предыдущих вариантов я не стал делать его многофункциональным, желая охватить все возможные потребности. Теперь это достаточно простой вариант типового блога, но который может использоваться как рабочий пример для вебмастеров.

Из изменений я отмечу только самые важные. В первую очередь новая структура каталогов. Появился assets, который содержит всю «оформительскую» часть (css, js, fonts, less и изображения).

Подход к компонентам немного изменен. Раньше они были «атомарными», теперь же используется «молекулярный» подход. То есть компонент top1 представляет собой готовую шапку, состоящую из других компонентов.

Все функции шаблона перекочевали в custom и используются только на уровне шаблона. При этом функции для админ-панели выделены в отдельный файл.

Файлы модульной сетки (каталог main) сильно переделаны. В main.php раньше была сложная php-логика. Теперь все эти куски кода вынесены в отдельный каталог blocks, что позволило упростить main.php до уровня полного погружения в html-верстку.

Встроенный LESS-компилятор перенесен на уровень плагина (в будущем будет полностью удалён), поэтому для компиляции следует использовать какой-то сторонний less-компилятор, например winless.

Здесь я отмечу одну особенность: я использую собственный Less/Css-фреймворк UniCSS. UniCSS обладает большими возможностями, но фишка в том, что вебмастер в своем шаблоне может использовать любой другой css-фреймворк, например twitter bootstrap. Возможность создания шаблона с любыми фреймворками (или без них), является ключевой позицией D4.

Так же мы полностью отказались от поддержки старых версий браузеров. Теперь это IE 11+, что позволило перейти на новомодные CSS3-фишки, вроде flex.

Благодаря UniCSS у пользователя Default шаблона есть возможность использовать готовые css-классы при создании записей. Они охватывают очень большой объём, например доступно более 500 иконок FontAvesome.

В main-каталоге представлены несколько вариантов вывода страницы: no-sidebar (без сайдбара), left-sidebar (левый сайдбар) и content-only (только контент). Последний вариант подходит для создания целевых страниц (landing pages). В этом случае страница формируется без компонентов шапки, подвала и сайдбара. Прямо в тексте можно использовать html-код (или simple, см. ниже). Классы UniCSS при этом позволяют существенно упростить вёрстку.

Default-шаблон теперь сразу поддерживает протокол Open Graph, который используется соцсетями, вроде твиттера, фейсбука и т.п.

В .htaccess внесен код для включения кеширования и сжатия трафика. Вкупе с адаптивностью, шаблон довольно неплохо проходит тесты гугловского PageSpeed Insights.

Выбор обработчика HTML

В MaxSite CMS появилась возможность выбирать каким именно способом будет обработан текст записи. По-умолчанию используется Default — стандартный, как и был раньше. Новый парсер Simple — перекочевал из Landing Page Framework и он понравится тем, кто привык полностью контролировать генерируемый HTML-код. Вариант «нет», позволяет вообще отключить парсер и он может пригодиться тем, кто использует сторонний визуальный редактор: обычно он сам генерирует готовый html.

Обработчики HTML перенесены на уровень плагинов: parser_default и parser_simple. Активируйте их.

Новая админ-панель

Админ-панель переделана на адаптивный дизайн. Однако она пока ещё в стадии работы и будет дорабатываться уже по ходу. Я решил, что из-за админ-панели не имеет смысла задерживать релизы MaxSite CMS.

Новый инсталятор системы

С нуля переписана установка MaxSite CMS. Теперь это отдельный инсталятор, работающий на LPF. Инсталятор выполняет полностью всю работу по установке системы. Критика MaxSite CMS почти всегда сводилась именно к установке системе. Теперь этот вопрос закрыт.

Плагины

Часть плагинов была удалена, как потерявшая актуальность. Многие плагины подверглись доработке. Из наверное самых интересных, отмечу плагин forms, позволяющий создавать произвольные формы. Поменялся его формат (добавилась секция опций), поэтому, если вы его используете, то обратите внимание на эти изменения.

Как перейти на MaxSite CMS 0.90

Перед обновлением сайта, я рекомендую проверить работу своего шаблона на новой версии. Переделка довольно простая и заключается в копировании недостающих файлов из старого shared-каталога в каталог своего шаблона. Такой шаблон будет корректно работать и на старых версиях MaxSite CMS (0.86 и ниже), и на новой.

В основном зависимости были на уровне shared/functions и shared/css-less. Теперь эти файлы должны быть в каталоге шаблона. Меняются, соответственно, пути подключения этих файлов. В default-шаблоне есть (пока) файл instruction.txt — инструкция по переносу старых шаблонов на новую версию MaxSite CMS.

Дальнейший ход работ над MaxSite CMS

Старая версия 0.86 какое-то время будет доступна на гитхабе в виде отдельной ветки v086. Ветка для разработчиков dev содержит все самые последние добавления и изменения. Периодически она будет сливаться с основной master, которая и представляет собой последнюю стабильную версию системы.

Все замечания должны добавляться только через issues. Все другие варианты (форум, комментарии) будут проигнорированы. Если вы хотите предложить свой код или реализовать новую идею, то предварительно сделайте тикет для публичного обсуждения.

Ближайшие несколько месяцев скорее всего уйдут на доделку админ-панели. После этого я подумываю о новом шаблоне под какую-то тематику, например для фотоблога. В любом случае объём работ очень большой, поэтому загадывать на перёд не будем.

Комментариев: 19 RSS

1Илья ЗемсковСайт01-06-2015 16:25

Про forms ещё можно добавить, что появилась важная возможность - делать аттачи.

Ну и согласен - автоматический инсталлятор тоже получился отличный!

2Александр02-06-2015 17:45

Ну что с вами делать, снова денег заслать придётся! :)

3Александр09-06-2015 08:51

Пробую установить версию 0.90

Версия PHP:

- 5.2.12 на тестовом локальном сервере

- PHP/5.2.17 на реальном

(Максим говорил, что в принципе версия 0.90 будет работать и на этой версии PHP)

Установка проходит нормально.

Но когда приобуешь перейти на сайт появляется сообщение об ошибке.

----------

An Error Was Encountered

The Encrypt library requires the Mcrypt extension.

----------

Подскажите, есть ли возможность запустить 0.90 на этой версии PHP?

(или только 0.86 последняя версия CMS которая на этом работает)

5DizeL09-06-2015 12:39

Супер новость! Будем тестить. Вопрос: редактор страниц будет тот же или другой?

6Александр09-06-2015 17:41

В php.ini включите библиотеку Mcrypt.

Благодарим, включили - всё работает :)

7Freeman16-06-2015 03:45

Да что это такое! Надумал свой блог на MaxSite переводить — новая версия вышла. Форум на PunBB поставил — так он тоже после 3-х лет молчания обновился! Осталось обновления RapidSVN дождаться...

8Тимур23-06-2015 15:13

Вообще непойму зачем шабл под фотоблог? кому он вообще нужен? домохозяйкам?

Лучше сделай шаблон по типу Endfold (для wp)

http://themeforest.net/item/enfold-responsive-multipurpose-theme/4519990

9SD24-06-2015 13:45

после подтверждения ввода данных на странице установки вылетает с ошибкой

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Подскажите куда копать?

10Максим24-06-2015 14:45

Скорее всего .htaccess содержит команды неподдерживаемые сервером. Точнее вам хостер подскажет.

11SD24-06-2015 15:57

На моем сервере нужно глушить Options +FollowSymLinks , что я и сделал.

Но не учел, что в папке инсталл лежит отдельно целая LPF со своим .htaccess.

Заглушил еще там Options +FollowSymLinks и пошла установка

12Макс25-06-2015 01:09

отличный быстрый Cms спасибо Вам

13Андрей30-06-2015 18:07

Доброго дня!

Дуже швидка та зручна CMS!!!

У останній версії (MaxSite CMS 0.90) пропадає весь heder на головній сторінці після любих змін у: Настройки -> Шаблон

Дякую

15Аноним01-07-2015 16:11

Підскажіть добрі люди ще таку річь..

В результаті редагування вся стаття виглядає приблизно так: [b]Привіт![/b] [table] [tr] [td]1[/td] [td]2[/td] [/tr] [/table].

Тоб-то в тексті присутній html-код. Що я роблю не так? Чи в редакторі якийсь режим увімкнений?

Дякую

17Николай Громов (nicothin)Сайт21-07-2015 15:43

был простой для понимания и внедрения собственной верстки движок

стал — монструозный, с кучей дублирующих друг друга возможностей, неконсистентный лабиринт.

теперь еще и старые шаблоны не работают :(

грусть.

от верстки админки — в дрожь бросает :(

18Максим21-07-2015 18:01

Проект ведётся на гитхабе, где можно оставить конструктивные замечания по системе.

19Александр В29-07-2015 13:18

Установка прошла, а при запуске сайта пишет

An Error Was Encountered
The Encrypt library requires the Mcrypt extension.

Подскажите, какую строку в php.ini на до вписать чтоб включить Mcrypt

Оставьте свой комментарий!

Комментарий будет опубликован после проверки

Вы можете войти под своим логином или зарегистрироваться на сайте.

(обязательно)