• Современная, быстрая и удобная система управления сайтом
  • 3-е место в рейтинге бесплатных CMS для блогов + добавить свой сайт
  • Более 100 тысяч созданных сайтов
  • Постоянное развитие системы. Русскоязычная поддержка
  • Готовые программные решения (плагины, виджеты, модули и т.п.)
  • Открытый исходный код на GitHub
  • SEO-friendly — идеальна для поискового продвижения
  • Минимальная нагрузка. Работает на любом хостинге
  • Автоматическая установка и обновление системы
Возможности | Помощь | Архив | Отзывы | Помочь проекту

Изменения в шаблонах

Просмотров: 25999Комментарии: 10
MaxSite CMSШаблоны (всё что касается шаблонов)

В будущей MaxSite CMS 0.32 решил сделать еще большую кастомизацию шаблонов. Начальные идеи я описал на форуме, а здесь остановлюсь на основных моментах.

Итак, у нас есть некая базовая концепция организации шаблонов: html-каркас хранится отдельно, а программная часть в каталоге type дефолтного (default) шаблона. Пример: шаблон «Clouds». Этим удалось значительно снизить зататы на создание шаблонов, то есть дизайнеру нет необходимости заниматься программированием и поддержкой обновлений - все автоматом обновится вместе с системой.

Однако, такой подход имеет и ограничения. Прежде всего речь идет о том, что в type-файлах жестко задан порядок вывода информации: заголовок, дата, потом рубрики и т.д. А что делать, если по дизайну нужно вывести рубрику после текста, а дату вообще убрать? Единственный способ был - скопировать нужный type-файл в свой шаблон и там его уже править.

Само по себе это не очень сложно, но тут у нас может возникнуть проблема с обновлением. Например в будущей версии MaxSite CMS я что-то изменю в дефолтном шаблоне: скажем, добавлю новую полезную функцию. Таким образом вебмастеру придется искать все изменения и опять обновлять свои type-файлы.

Всё это не совсем удобно, поэтому я решил реализовать механизм, который позволяет использовать type-файлы «частично»: подключается type-файл дефолтный, а для организации самого цикла вывода - свой кастомный «type_foreach»-файл.

Читать дальше »

MaxSite CMS 0.31

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

Внеплановая версия. После выхода 0.30 обнаружились два недочета. Оба связаны с CodeIgniter 1.7.1. Первый - неверно формирующаяся тема письма. В CodeIgniter использовали «Quoted-Printable», но сделали это с ошибкой, которая приводила к тому, что заголовки писем могли оказаться «битыми». Я исправил кодирование на «BASE64», теперь проблем не должно быть.

Второй недочет связан с измененым синтаксисом SQL-запросов в Active Records. Раньше можно было указать условия в запросах без пробела, а теперь только через пробел. Поэтому в каких-то случаях старый синтаксис приводил к ошибке.

Поначалу я хотел просто выложить fix, но потом переиграл на новую версию: получилось, что я успел внести некоторые изменения в систему, а также сделал несколько новых плагинов. Так что решил просто выпустить MaxSite CMS 0.31.

Читать дальше »

MaxSite CMS 0.30

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

Изменений традиционно много. :) Прежде всего отмечу переход на CodeIgniter 1.7.1. Из-за этого пришлось поправить некоторые файлы системы, в частности SQL-запросы, потому что CodeIgniter не совсем корректно их экранирует. Также вручную пришлось поправить ошибку при загрузке файлов. Надеюсь, что разработчики пофиксят все эти замечания.

Для обновления я рекомендую вначале переименовать на сервере каталог «system» в «system-old», загрузить новый «system», выставить права 777 на каталог кэша и потом загрузить все остальное.

Также обратите внимание, что обновились некоторые файлы конфигурации, в частности «application/config/config.php». Если вы его меняли, то предварительно сохраните старый файл  перенесите в новый его настройки.

Обновил jQuery до версии 1.3.2. Было желание обновить и UI, но у меня появились ошибки, поэтому пришлось оставить старую версию.

Дальше список изменений.

Читать дальше »

Организация данных в MaxSite CMS

Просмотров: 150Комментарии: 1
MaxSite CMSОбщие вопросы

Предположим у нас есть адрес http://site.com/hello. Вопрос - что именно должен вывести «движок»? Может это страница? Или рубрика? А может быть метка? А вдруг это какой-то отдельный файл hello.php в каталоге шаблона?

Чтобы решить данный вопрос система должна определить что за тип данных требуется вывести. Например мы можем считать, что hello - это страница. Тогда тип данных будет «page». А можем условиться, что это рубрика. В этом случае тип данных будет - «category». Если вы разбирались в WordPress, то знаете, что в нем используется несколько предопределенных типов данных: страницы, записи, рубрики, метки и несколько «служебных» вроде дат.

Таким образом, WordPress всегда действует по одному жесткому алгоритму: анализирует входящий адрес и определяет какие именно данные требуется выводить.

Понятно, что в полноценной CMS данный подход не годится - необходимо сделать так, чтобы можно было переопределять адрес под свои задачи. Скажем http://site.com/hello - это должна быть рубрика. Например в MaxSite CMS вполне комфортно могут существовать с короткой ссылкой (slug) «hello»: страница, рубрика, метка и отдельный файл hello.php.

Читать дальше »

О проекте

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