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

Шаблонизатор или форматированый PHP+HTML вывод в MaxSite CMS

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

Шаблонизатор как правило применяется там, где требуется разделить работу программиста и верстальщика. Программист подготавливает данные для вывода, а верстальщик делает разметку в привычном HTML, без оглядки на программый код. Раньше, когда сайты были не такими интерактивными и «умными», подход неплохо работал. Со временем логика вывода усложнялась и это приводило к усложению самого шаблонизатора и добавлению новых команд. В итоге некоторые шаблонизаторы имеют настолько сложный и запутанный синтаксис, что проще выполнить логику на чистом PHP.

На текущий момент при создании PHP+HTML кода используется три основных подхода.

  • PHP - сам по себе неплохой шаблонизатор. Поэтому за базу берется HTML-код с PHP-вставками в виде echo или короткого синтаксиса.
  • Всё есть PHP. HTML выводится в виде строк череp echo. Как вариант - вывод через специальные php-функции.
  • Отдельный шаблонизор - подготавливаются данные, а сам вывод делается в отдельном tpl-файле.

Есть ещё подход, где нет никакой системы, а вариант вывода определяется по ситуации. Мы его рассматривать не будем, хотя он, насколько я понимаю, и преобладает в вебстроительстве.

Возьмем для рассмотрения простой пример вывода div-блока с текстом.

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

Модульная структура сайта

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

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

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

В какой-то мере ситуацию «выправляет» использование фреймворков, которые заставляют вебмастера следовать предустановленному порядку. Достаточно сравнить каталоги CodeIgniter и Zend Framework чтобы в этом убедиться. И здесь следует обязательно отметить тот факт, что оба фреймворка используют шаблон проектирования MVC (Модель-Вид-Контроллер). То есть теоретически, если следовать MVC, разработчики должны были получить примерно одинаковую структуру файлов. На деле же этого не происходит. Если же посмотреть другие фреймворки или CMS, то мы увидим ещё больше различий и несоответствий.

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

MaxSite CMS 0.75

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

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

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

Теперь кратко об всех изменениях.

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

Форматированный вывод записей в MaxSite CMS

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

Головная боль любого верстальщика - смесь HTML и PHP-кода. Особенно запутанным будет код, в котором используется множество вложенных тэгов, css-классы и стили.

При выводе записей помощью PHP-кода получаются необходимые данные, но для вывода в браузер, нужно его оформить в HTML. Сложность здесь в том, что на уровне PHP невозможно заранее определить какие именно данные потребуются для вывода.

Например - заголовок записи. Если это главная страница, то это должна быть ссылка. Если одиночная, то просто H1. Если это какой-то виджет, то просто текст.

Именно по этой причине в MaxSite CMS с самых первых версий используются универсальные функции mso_page_...() в которых можно указать HTML-оформление. Этот подход на порядок проще, чем заставлять верстальщика оперировать PHP-переменными: код был бы в несколько раз сложней и запутанней (одни if-условия чего стоят...).

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

О проекте

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