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

Статьи и подсказки

Работа с MaxSite CMS

Get-запросы в MaxSite CMS

Просмотров: 15162Комментарии: 2
MaxSite CMSСтатьи и подсказки

У меня просьба к тестерам: потестировать последний latest. В нем реализована возможность указывать get-запросы. Например:

  • http://site.com/?param=val&param3=val
  • http://site.com/page/about?param=val&param3=val
  • http://site.com/?param
  • и т.д.
Проблема заключается в том, что MaxSite CMS использует парсинг входящего url средствами CodeIgniter. А он недостаточно полно обрабатывает строчку, в итоге в сегменты записывается строка после «?» (а нужно её отсекать). По этой причине пришлось ввести дополнительную проверку и обработку. Также теперь метод _remap определяется из уже сегментов $MSO, а не из CodeIgniter.

Три новые функции:

  • mso_segment_array() - получение массива сегментов
  • mso_url_get() - получение get-строчки
  • mso_parse_url_get() - преобразование get-строчки в массив (ключ=значение)
В $MSO добавил новый ключ: $MSO->data['uri_get'] - get-строчка.

Уменьшение кличества SQL-запросов путем CI-кэширования

Просмотров: 17722Комментарии: 11
MaxSite CMSСтатьи и подсказки

Для того, чтобы еще больше уменьшить количество SQL-запросов, можно применить встроенное в CodeIgniter кэширование. Для этого нужно в файле database.php изменить строчки:

$db['default']['cache_on'] = TRUE;

После этого CodeIgniter будет автоматически кэшировать SQL-запросы. По моим тестам это меньше на 3-5 запросов на страницу.

Следует учитывать, что CodeIgniter кэширует такие запросы целиком, поэтому размер файлов получается довольно большой. У меня на тестовой сайте получилось более 10Мб. Кроме этого, поскольку в CodeIgniter кэш более простой, чем в MaxSite CMS, то могут накапливаться старые файлы. Так что придется вручную периодически подчищать каталог «db».

Думаю, что дополнительное кэширование пойдет на пользу высокопосещаемым сайтам. Для небольших сайтов, скорее всего «родного» MaxSite CMS кэширования будет достаточно.

Float-опции (плоские опции)

Просмотров: 12307Комментарии: 4
MaxSite CMSСтатьи и подсказки

На днях нужно было решить одну проблему, но не знал с какого бока подойти. Требовался плагин, который позволяет выводить разные текстовые/php-блоки на сайте. Проблема здесь в том как именно хранить данные.

Узнать чем всё дело кончилось-то...

К вопросу о pingback и trackback

Просмотров: 255Комментарии: 15
MaxSite CMSСтатьи и подсказки

Занимаюсь реализацией пинга для MaxSite CMS и как-то возник «философский вопрос»: «А нафига?». Дабы понять о чем речь, кратенько расскажу об этих технологиях. Я уже когда-то их описывал и теперь немного технической информации.

Дело в том, что пинги работают по такому алгоритму: мой сайт получив запрос от чужого сайта, должен отправиться на чужой сайт и проверить а) наличие указания на пинг-сервер (XMLRPC), б) найти в тексте ссылку на мой сайт. Если условия выполнены, то на моем сайте появляется комментарий.

Трекбак работает чуть по другому. Вместо того, чтобы отправляться на чужой сайт, мой сайт просто ставит трекбак на премодерацию. Но трекбак с чужого сайта передает и текст для комментария. А в нем может быть всё, что угодно.

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

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

О проекте

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