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

Вышел CodeIgniter 1.6.2

Просмотров: 7667Комментарии: 0
CodeIgniter

Вышел CodeIgniter 1.6.2. Изменений довольно много, прежде всего хочется отметить два:

  • во всех php-файлов убран закрывающий  ?>
  • в конфигурации добавлен файл constants.php

Версию пока тестирую локально, после этого обновлю уже на сервере.

Визуальный редактор

Просмотров: 13598Комментарии: 13
Старый архив

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

Первоначально я взял редактор FreeRTE. Всё в нем замечательно: и оформление, и настройки, но в процессе работы возникло несколько проблем. Главная из них в том, что спецсимволы, которые с лихвой присутствуют в PHP и которые я публикую, не совсем корректно обрабатываются этим редактором. Даже когда я перехожу на закладку «Код», все равно некотоыре символы неверно кодируются.

Основная проблема, как оказалось, кроется в кавычках, которыми экранируются спецсимволы. Получилась солянка: на стороне сервера я делаю правильное html-кодирование, на стороне браузера уже работает JS, со своими особенностями. Поэтому «серверные тексты» нужно отдавать редактору уже в его формате.

Ситуация значительно усложнилась из-за того, что редактор не имеет textarea-элемента. Поэтому тексты нужно передавать как одну из JS-переменных.

В общем намучавшись с кодированием туда-сюда, я решил сменить визуальный редактор.

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

CodeIgniter и PHP как FastCGI

Просмотров: 14538Комментарии: 7
CodeIgniter

Вот здесь я уже писал, об особенностях работы PHP в режиме FastCGI. Недавно обнаружил еще один глюк, который поначалу принял на счет этой «связки». Как оказалось проблема крылась именно в CodeIgniter.

Суть проблемы. У меня на сайте пагинация страниц. Поскольку главная страница имеет тип «home», то ссылки на страницы формируются в виде «сайт/home/next/2». И вот эта штука напрочь отказывалась работать - постоянно выходило сообщение, что страница не найдена (404).

Обнаружилось, что неверно работает $this->uri->segment_array() - он упорно исключал из первого сегмента URI «home». Перепробовав всевозможные варианты, полез в URI.php и выяснилась интересная деталь.

В режиме, когда $config['uri_protocol'] = "REQUEST_URI" происходит парсинг $_SERVER['REQUEST_URI'], что вполне логично. Но вот в конце этого парсинга (функция _parse_request_uri) получает реальный путь на сервере и сравнивает с полученным REQUEST_URI и берет только ту часть, которая несовпадает. Так вот, на сервере путь начинается с «home» и первый сегмент тоже начинается с «home». Вот функция и удаляет её. :)

Я не стал сильно разбираться в смысле этих манипуляций, просто закоментировал строки:

# $parsed_uri = implode("/", array_slice($parsed_uri, $i));
$parsed_uri = implode("/", $parsed_uri);

После этого все заработало.

Сделал все плагины виджетными

Просмотров: 38200Комментарии: 0
Старый архив

Впрочем только те, которые действительно могут быть виджетными. :-)

Создание виджетов оказалось совсем простым делом, не сравнится с WordPress, где это сложней.

Еще оказалось, что плагин Twitter'а отлично подходит как грабилка RSS. Для примера подключил трансляцию со своего сайта.

И главное. Немного доработал функцию рубрик, чтобы можно было указать список исключающих и включающих рубрик. Это нужно, чтобы сделать группы рубрик. Сейчас это «MaxSite CMS» и «Блог».

О проекте

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