MaxSite CMS 0.80

Просмотров: 45205Комментарии: 31
MaxSite CMSВерсии (релизы)

Данная версия открывает новый этап развития системы. Основные изменения касаются нового способа построения шаблона, на т.н. shared-каталоге. В комплекте доступен новый шаблон D2, который демонстрирует все преимущества нового способа.

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

Само обновление следует выполнить по инструкции, расположенной в файле install-ru.txt. Так следует обновляться при любой версии MaxSite CMS. В следующих - обновление будет возможно привычной простой загрузкой новых файлов. Особо отмечу, что никаких изменений в базе данных не было, поэтому откатиться можно к любой версии MaxSite CMS простым копированием файлов.

Основные изменения, как я уже отметил, касаются shared-каталога и D2, поэтому большинство нововведений будут доступны только для будущих шаблонов. Все существующие варианты, основанные на default-шаблоне, полностью сохраняют свою функциональность и нет необходимости заботиться о переделке этих шаблона. Я полностью сохранил совместимость и никаких проблем с переходом на новую версию MaxSite CMS быть не должно.

В работе над этой версией, особенно того, что касается вёрстки, мне помогал Юра. Новая семантика HTML5 - это в основном его заслуга, мы достаточно много над этим работали, пока не «перекурили» кучу доков и отсеяли массу откровенного хлама.

Новую версию следует скачивать с Github:

Загрузка с гиххаба

Основные изменения.

- Отказ от визуального редактора по-умолчанию. Теперь по-умолчанию используется невизуальный редактор Editor markItUp. Существующий визуальный редактор переместился в плагины как Editor JW. О причинах я написал раньше.

Таким образом, если вы привыкли работать с визуальным редактором, то нужно активировать соответствующий плагин. Чтобы BB-код начал работать, следует активировать одноименный плагин.

- В этой версии я удалил неиспользуемые каталоги CodeIgniter. Визуально стало чуть удобней.

- В D2 новые компоненты (17 шт.). Некоторые из них используются как подкомпонеты, например меню, социконки и форма поиска. Мне хотелось продемонстрировать новые возможности, поэтому я включил сразу столько компонентов. Некоторые достаточно интересные, например слайдер slidesjs имеет много настроек. Подкомпонент _login позволяет выводить форму логина через кнопку dropdown-меню. На его основе я сделал компонент ns-menu-login. В целом данный функционал характерен для premium-шаблонов, здесь он доступен из коробки.

- Шаблон D2 представляет собой улучшенную версию Default. Принципиальное отличие в том, что общешаблонные файлы, вроде type, вынесены выше в shared-каталог. Это позволяет не завязываться на другой шаблон, а безболезненно использовать общедоступные файлы. Именно для этого shared и предназначен. Поэтому в D2, стало меньше файлов и теперь там нет дублирующей функциональности.

- Подключение некоторых файлов выполяется через аля-«диспетчеры». Это позволяет поддерживать модульность шаблона и системы в целом. Например в index.php шаблона диспетчер - это функция mso_dispatcher(). В type-файлых диспетчер это функция mso_find_ts_file(). Они достаточно «хитрые» и избавляют вебмастера от массы сложного запутанного кода.

- По ходу дела я сразу решил ещё несколько проблем и поменял структуру некоторых каталогов. В первую очередь это type-файлы. Теперь все type-файлы находятся в своём подкаталоге. Аналогичную стуруктуру имеет и каталог компонентов. Каталог шаблона опций (options) содержит набор ini-файлов с настройками отдельных секций (вкладок).

- Улучшена поддержка Less-css. То есть теперь вся верстка выполняется в less-файлах и на уровне системы автоматом компилируется в css-файл. Технически осталась возможность верстать на чистом CSS, но для продуктивной работы мы всё-таки будем использовать LESS. Автоматическая компиляция, как и прежде, доступна через mso_lessc(), пример см. в var_style.php. Вместе с тем я написал новый плагин Less compiling, который позволяет выполнять автоматическую компиляцию LESS-CSS для произвольных файлов. С ним просто указывается less-файл, css-файл и какие-то опции. Дальше всё работает автоматом.

- Так же в mso_lessc() я реализовал поддержку расширяющих функций библиотеки LessPHP. Например можно придумать произвольную less-функцию и использовать в своём шаблоне. Кроме того, я сделал возможность автоматического подключения less-файлов через управляющие команды. Например @MSO_IMPORT_ALL_BLOCKS; подключит все файлы из подкаталога blocks. Примеры вы можете посмотреть в var_style.less.

- Запись теперь может иметь свой шаблон вывода. Для примера я сделал main-шаблон no-sidebar. Само переключение реализовано через мета-поле.

- Новое метаполе Изображение записи, позволяющее указать изображение, которое будет выводиться в тексте записи. «Плюшка» здесь в том, что файл изображения формируется через библиотеку Thumb. Она позволяет на основе любого изображения автоматически создать произвольную миниатюру с обрезкой, кропом и т.п. В настройках шаблона можно указать произвольные размеры изображения, а также css-класс.

- CSS-фреймворк style-all-mini.css теперь находится в shared-каталоге. Присутствуют исходные less-файлы, что позволяет собрать версию для своего шаблона. Стили я подчистил, убрал лишние. Типографику немного подправил, добавил новые миксы/хелперы, которые можно использовать в своем шаблоне. Сюда же перенёс символьный шрифт Font Awesome. Он и раньше был в системе, только в admin-каталоге. Там же сделал font-awesome.less в виде хелпера для удобного использования.


Ну наверное это основные изменения о которых стоит упомянуть.

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

1Stormtrooper16-12-2012 20:44

Спасибо за релиз :)

Посмотрим что внутри

4Аноним17-12-2012 16:24

ПОдскажите пожалуйста..У меня сайт базируется на MaxSite CMS: 0.68

Как безболезненно обновить до версии 0.8..или это нереально?

Суть вопроса свести к минимуму количество манипуляций по установке версии 0.8 на 0.68

6АлександрСайт18-12-2012 20:21

Здравствуйте, Максим!

Скачал MaxSite CMS 0.80. Все супер, включил шаблон D2. Решил попробовать слайдер. Он работать работает, что-то там мотает туда обратно, но ни изображения, ни текст к ним, вообще ничего в него не загружается. Получается что html-разметка слайдов все же выводится на страницу и обрабатывается скриптом, но переменные с текстом и url пустые.

Вопрос - как быть?)))

8АлександрСайт18-12-2012 21:05

Извиняюсь! Вопрос снят! Причина - перетрудился и соответственно запутался в трех соснах, предыдущий коммент прошу удалить!)))

9Дмитрий19-12-2012 13:56

Здравствуйте, Максим.

На чел рассматривать ваш новый релиз.

Очень понравилась структура компонентов именно этого и не хватала.

Правда есть и свои недостатки.

Сейчас по пробывал перенести шаблон в старую версию maxsite

и сразу выскочила ошибка.

A PHP Error was encountered

Severity: Warning

Message: require_once(functions/template.php) [function.require-once]: failed to open stream: No such file or directory

Filename: d2/functions.php

Line Number: 18

10Сергей19-12-2012 14:08

Доброго времени суток, Максим!

После обновления версией 0.80, перестала на шаблоне default - работать гостевая книга. Это только у нас или?

11Максим19-12-2012 14:26

Да, действительно, есть такое дело. Выложу исправление на гитхабе как 0.801.

12Аноним19-12-2012 23:31

Я правильно понял, после обновления больше не требуется устанавливать правила 777 на папку кмша и аплоадс ?

13АлександрСайт20-12-2012 23:21

Классная штука. Работает великолепно. Максу большое спасибо!

Учитывая, что аппетит приходит во время еды, тем более что по логике развития системы оно напрашивается само собой, то еще бы добавить функции, присущие интернет-магазинам, то поличился бы супер-пупер мульти-комбайн. :-)

14Александр ШиллингСайт22-12-2012 09:33

Я правильно понял, после обновления больше не требуется устанавливать правила 777 на папку кмша и аплоадс ?

По идеи нет. Но иногда права сбрасываются и поэтому не помешает проверить какие права у вас стоят.

15Аноним22-12-2012 21:28

По идеи нет. Но иногда права сбрасываются и поэтому не помешает проверить какие права у вас стоят.

У меня сейчас стоят права 755, но в новом файле install-ru.txt не сказано, что правило надо менять. Я так и не понял, теперь надо ставить правила 777 или нет ? В install-ru ничего об этом не сказано.

16vovansСайт23-12-2012 09:27

Их без необходимости никогда и не нужно было ставить в 777. Если у вас всё делается от одного пользователя, то вообще ничего менять не нужно. Хоть 700 ставьте. Какой вообще смысл в 777? Так делают только в тех случаях, когда вообще не понимают, какие права нужны.

17Аноним23-12-2012 20:57

Спасибо за исчерпывающий ответ :)

18АлександрСайт24-12-2012 23:42

В файле application\maxsite\shared\type\category.php

Есть такое содержимое

if ($f = mso_page_foreach('category-do')) require($f);
if ($pages) // есть страницы
{  
 echo NR2 . '<header>';
 if ($f = mso_page_foreach('category-header')) 
 {
 require($f);
 }......

А вот сам файл category-header.php нигде не нашел.

Зато в category-do.php вроде как прописан вывод названия категории, но когда его кидаю в папку своего шаблона, то начинается ругань

A PHP Error was encountered
Severity: Notice
Message: Undefined variable: title_page
Filename: type_foreach/category-do.php
Line Number: 6

Вопрос в том, как сейчас лучше выйти из положения, так чтобы при следующем обновлении CMS все работало - сделать файл category-header.php и в нем прописать вывод названия категории или все же подправить category-do.php и оставить как есть???

20Сергей МСайт28-12-2012 23:28

Стояла версия 0.78, поставил 0.804 и при подключении редактора Editor Markitup выскакивает следующая ошибка в админке:

Fatal error: Cannot redeclare editor_markitup() (previously declared in D:\server\domains\localhost\application\maxsite\admin\plugins\editor_markitup\index.php:9) in D:\server\domains\localhost\application\maxsite\plugins\editor_markitup\index.php on line 98

Когда выключаю редактор - переименовав его папку - админка грузится нормально.

Что это за жук и как мне его задавить?

21Сергей МСайт29-12-2012 00:25

А понял в чем дело.

Просто этот редактор идет по умолчанию, и у меня он был установлен как плагин.

Ты может где отпиши, что перед обновлением отключите плагин маркитапа.

22Santery09-01-2013 20:09

Все отлично и летает! Но! Обнаружил ошибки

я решил на основе D2 сделать новый шаблон по эскизам старого

все сделал по инструкции

но если мне, например, захотелось в папку type-foreach добавить файл info-top.php, то файл обрабатывается с ошибками

Message: Undefined variable: page_slug

и т.д.

Решением оказалось добавить в код после

<?php if (!defined('BASEPATH')) exit('No direct script access allowed');

вот это

extract($page);

и все заработало

Вопрос: так и должно быть? или это ошибка? потому что в других файлах я нашел этот код, а в некоторых других, в том числе и этом - нет

23Максим09-01-2013 22:54

Это не ошибка. В shared используется шаблонизатор Page_out, поэтому вывод лучше делать через него.

Новый вариант info-top.php

$p->html(NR . '<header>');
 $p->line('[title]');
 $p->div_start('info info-top');
  $p->line('[date][edit][cat][tag][view_count]');
 $p->div_end('info info-top');
$p->html('</header>');

Для смены формата используется метод

$p->format(...)

24Дима Тиунов10-01-2013 11:40

Привет Max,у меня при установке на мой локальный сайт выдаёт такие ошибки :

A PHP Error was encountered

Severity: 8192

Message: mysql_escape_string(): This function is deprecated; use mysql_real_escape_string() instead.

Filename: mysql/mysql_driver.php

Line Number: 319

A PHP Error was encountered

Severity: 8192

Message: mysql_escape_string(): This function is deprecated; use mysql_real_escape_string() instead.

Filename: mysql/mysql_driver.php

Line Number: 319

A PHP Error was encountered

Severity: Warning

Message: Cannot modify header information - headers already sent by (output started at C:\OpenServer\domains\localhost\system\core\Exceptions.php:185)

Filename: libraries/Session.php

Line Number: 675

A PHP Error was encountered

Severity: Warning

Message: Cannot modify header information - headers already sent by (output started at C:\OpenServer\domains\localhost\system\core\Exceptions.php:185)

Filename: libraries/Session.php

Line Number: 675

25АлександрСайт10-01-2013 17:12

Ты может где отпиши, что перед обновлением отключите плагин маркитапа
Всем привет. По этой проблеме и забежал поставил последнюю на данный момент версию 0.807 и действительно были проблемы из-за редактора, спасибо Сереге получилось исправить переименованием.

26Sprat13-01-2013 15:58

Камрады, подскажите пожалуйста.

Возможно ли обновить плагины, не обновляя саму cms?

Не возникнет ли конфликтов в работе?

Спасибо.

27АндрейСайт16-01-2013 09:24

После обновления не мог зайти в админ-панель. Получалась ошибка 500 (Google Chrome выдавал что-то вроде Internal Server Error). Посмотрел в лог на хостинге - оказалось то же самое, что у Серёги. Спасибо ему за подсказку. Присоединяюсь к просьбе добавить этот момент в инструкцию по обновлению. Я обновлялся по описанию в install-ru.txt

28Sasha Melbourne16-01-2013 09:38

а демо версию посмотреть можно? админки например

29Santery20-01-2013 17:28

еще вопрос возник - активно использую стандартное Превью записи

с новой версией он пропал

как мне его вернуть?

31ill headСайт06-02-2013 04:38

Прошу прощения за предыдущий вопрос. Cкачал и увидел.

Волнует следующее. Вы пишите, что удалили "неиспользуемые каталоги CodeIgniter".

1) Значит ли это, что функционал этой версии CMS "заточен" под какой то узкий спектр задач/сайтов или на ней можно реализовать сайт любой сложности?

2) Можно будет узнать какие именно каталоги вы удалили, чтобы восстановить полный CodeIgniter и какой версии?

3) На ваш взгляд, "левому" программисту легко/доступно будет внести дополнения/изменения в админку?

Спасибо.

зы: CMS устанавливал один раз давно и версии не помню (0.6-0.7 примерно), чтобы поглядеть что это такое. Админка очень понравилась, описание создания шаблонов у вас тоже есть. Стоит задача рефакторить и развивать сайт test1.avtoritet.biz на фреймворке. Выбрал CI и решил перескочить через рутину и воспользоваться вашей CMS.

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

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

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

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

О проекте

MaxSite CMS предназначена для создания сайтов любой сложности. Система отлично подходит обычным пользователям, вебмастерам, фрилансерам и вебстудиям.