CMS на основе CodeIgniter — текущая ситуация

    На днях мне потребовалось установить движок для англоязычного блога. Проблема в том, что хостинг (VPS с объемом памяти 256 Мб) не тянет WordPress версии 2.6, а в 2.0.11 (которая, возможно, и заработала бы) работают не все нужные мне плагины. В общем, я решил посмотреть, какие сейчас существуют легкие CMS, причем на основе CodeIgniter, как наиболее быстрого и потребляющего мало памяти фреймворка PHP. Требования по функционалу у меня достаточно простые: возможность ведения блога, желательно с SEO-примочками (прописывание заголовков, мета-тегов, генерация Google Sitemap).


    Для начала две CMS, которые я не рассматривал, как возможные решения:

    MaxSite CMS — русскоязычная CMS, о которой я уже писал. Скажу сразу, что это самая продвинутая CMS на CodeIgniter из всех, перечисленных в этом обзоре, но для меня в данной задаче она не подошла по одной причине — ее русскоязычности, но об этом позже.

    ExpressionEngine — замечательная CMS, у которой достаточно много поклонников, к тому же она создана теми же людьми, что и сам CodeIgniter. Но, во-первых, текущая версия (1.6.5) не реализована на CodeIgniter (разработчики планируют перейти на CI только в версии 2), а во-вторых, лицензия на ее коммерческое использование платная ($249.95), а персональный бесплатный вариант я использовать не могу.

    Итак, какие варианты есть из того, что мне удалось найти:

    Blaze — этот проект, похоже, уже умер, по крайней мере, последние новости системы датируются апрелем 2008 года. Зато он стал родоначальником для нескольких других CMS, которые рассматриваются ниже. Заставить нормально работать эту систему мне не удалось. Практически на любое действие возникали ошибки со ссылками, как с использованием mod_rewrite, так и без него.

    Blogmer — честно признаюсь, эту CMS мне не удалось даже поставить, в дистрибутиве я не нашел файла index.php в корневой директории. Попытка подставить файл из самого CodeIgniter к успеху не привела. Информация об установке пакета при этом отсутствует.

    Shanti CMS — попытка запуска системы выдает ошибку синтаксиса MySQL, инструкции об установке системы нет

    CI-CMS — этот проект вроде бы достаточно живой, по крайней мере, автор периодически выкладывает свою работу в SVN (последние исправления — 23 октября). Система основана на Blaze, позиционируется как «модульная» (пока что есть только модули ядра, типа «блог», «страница» и т.д.). Поставилась легко, смог зайти в админку. Только вот незадача — найти в админке способ публикации материалов (блога и страниц) мне не удалось. Возможно, проблема в браузере, и нужно использовать IE (у меня FF), но это проверять я уже не стал :)

    InkType — единственная полноценно работающая CMS из перечисленных. Ставится легко, я без проблем адаптировал для нее один из простых шаблонов от WordPress. Но толку от этого достаточно мало: в системе для сайдбара предусмотрено всего 4 виджета — recent posts, search, categories и blogroll, поддержка тегов в постах отсутствует, ну и вообще функционал очень скудный. Будем надеятся, что он будет развиваться, последняя версия системы — от 7 сентября 2008.

    Выводы

    1. Решения задачи в чистом виде я не нашел

    2. InkType — это единственная из рассмотренных CMS, которой можно пользоваться, но только при очень скромных требованиях к функционалу.

    3. Единственный выход на текущий момент — это использовать MaxSite CMS, но придется думать, как перевести ее на английский, хотя вероятно, это не так сложно.

    Поделиться публикацией

    Похожие публикации

    Комментарии 41

      +1
      а в чем проявляется «не тянет WordPress версии 2.6»?
        0
        Выдает пустые страницы, как при работе с админкой, так и при просмотре публичной части. При этом количество свободной памяти в системе резко уменьшается, почти до 0. Думал, что поможет увеличение memory_limit с 16 до 32 Мб в php.ini, но это тоже не спасло.
        +1
        Я не понял, вам нужна CMS для решения определенных задач, или вам нужна CMS, подходящая под вашу идеологию?
          0
          Желательно было бы и то и другое :)
            +1
            CodeIgniter сам по себе надо настроить, чего стоит настроить его ЧПУ, у меня это так и не вышло со стандартным .htaccess, все шло через site.com/CI/index/class/method/param, индекс никак не убрать, я не говорю о серверах вроде lighthttpd, nginx, на которых собственные правила написания rewrite'ов, не беру еще массу вещей. CI хорош, но не так прост в установке и освоении, в следствие того, что php не ruby, если CI претендует на лавры Rails.

            Естественно, что CMS пока не так много, а найти из этого мизера подходящую — везение.
              0
              Согласен. Я без разговоров использовал бы MaxSite, где нет никаких проблем, в т. ч. с ЧПУ на CodeIgniter, если бы она годилась для данной конкретной задачи.
                0
                А вам удалось нормально его настроить? ЧПУ в смысле :)
                  0
                  Там вообще не пришлось ничего делать — только выполнить инструкции по установке, все работает «из коробки».
                0
                erum.ru/article/5
                В восьмом пункте описывается, как убрать index.php из адреса.
                  0
                  Специально написал =)
                  habrahabr.ru/blogs/codeigniter/65408/
                  0
                  Таких нет, делайте под свою идеологию сами :)
                  А если серьезно. А зачем привязываться к FW CI?
                  Это не понятно… раз.
                  Второе я особо не фанат Drupal — но очень его уважаю. На нем в принципе можно сделать что хотите, да и на WP тоже.
                  Единственное что мне в них не нравится — отсутствие нормальной работы как с моделью view, причем на архитектурном уровне. Для того чтобы была полностью реализвана модель view аля web 2.0 и +? надо разрабатывать свою… ;)
                    0
                    Дело в том, что CI — это действительно самый быстрый PHP-фреймворк. Его использование сильно повышает шансы на то, что система получится легкой и быстрой, что подтверждает MaxSite CMS.
                      +1
                      CI — инитится быстрей прочих. А вот само приложение на CI — зависит от рук программиста. Нужно правильно спроектировать, реализовать нормальное кэширование, кодить без запросов типа «select * from» внутри цикла и так далее.
                      Достались мне исходники клона фэйсбука на CI — мама дорогая!
                        0
                        Да уж, забавно. Причем сами авторы CI предъявляют достаточно жесткие требования к коду. Если бы только их все выполняли… :)
                      0
                      А что касается WordPress и Drupal, при всей их гибкости (я тоже очень уважаю оба эти продукта), ресурсов они требуют очень много и тормозят по полной программе на вполне приличных хостингах.
                  +2
                  VPS 192mb
                  Wordpress 2.6
                  4000 посетителей в день
                  Кеширование включено
                  Всё тип-топ
                    0
                    Неплохо. Действительно, можно разобраться и проверить конкретные плагины, которые могут съедать память. Спасибо за инфу.
                      0
                      Только что проверил, у меня тоже все тип-топ ровно до того момента, когда я начинаю исправлять/добавлять посты в админке. Кеширование у меня тоже включено, правда используется плагин wp-super-cache. Если не cложно, подскажите, а какой у вас кэш включен? И какая точно версия WP?
                        +1
                        wp 2.6.3
                        кэш тоже wp-super-cache + memcached (временно выключен разницы почти не видно)

                        вы хостера не пробовали менять?
                          0
                          Да, у меня то же самое — 2.6.3 + wp-super-cache + еще ряд плагинов (не очень много: All in One SEO Pack, AskApache Search Engine Verify, Bookmark Me, Google XML Sitemaps, WWW Redirect, yaCAPTCHA). Попробую проверить, что конкретно дает такой эффект. Если ничего не получится, значит можно и на хостера обратить внимание.
                            0
                            думаю отключение плагинов вам ничего не даст — я думал их у вас больше, а те что у вас не могут существенно влиять на производительность. Скорее всего тогда дело в хостере… часто получается так что VDS-ы работают даже хуже чем обычные виртуальные хостинги.
                              0
                              Решил проблему установкой WP 2.0.11 (пришлось немного переделать темы и изменить набор плагинов). Теперь, по крайней мере, память не исчезает непонятно куда. Но хостера, при случае, поменяю.
                          0
                          и советую свести кол. плагинов до минимума, т. к. в большинстве из них быдлокод высшей пробы и дыры сквозь которые утекает память
                            0
                            Добавлять/исправлять? А отключать ревизии пробовали?
                            Есть плагин для управления ревизиями и можно менять настройки ревизий
                            Такая опция есть, но по умолчанию она скрыта
                            Эта константа может быть установлена в вашем wp-config.php (не забывайте пользоваться правильными редакторами), или специальным плагином (еще не видел таких)

                            Чтобы задать ее в файле конфигурации, добавьте строку

                            define('WP_POST_REVISIONS', 'ТУТ_БУДЕТ_ВАША_НАСТРОЙКА');

                            где ТУТ_БУДЕТ_ВАША_НАСТРОЙКА может принимать значения:

                            true (по умолчанию), -1: хранить каждую ревизию
                            false, 0: не сохранять никаких ревизий (кроме одного автосохранения на запись)
                            (int) > 0: как много ревизий хранить на одну запись (+1 на автосохранение). Старые ревизии автоматически удаляются.
                            Ну и есть ещё ряд вещей, которыми можно попробовать раскочегарить вордпресс.
                            Главное из которого — кэш. Ну и отрывание того, чем не пользуешься.
                              0
                              Отключил, не помогает, буду проверять плагины.
                          +1
                          Что именно вам нужно на английском? Фронт, бэк, сервисную часть, всё вместе?
                          Для сервисной части меняйте
                          application\config\config.php
                          строчку
                          $config['language'] = «russian»;

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

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

                          Как-то так.
                          Максим размышляет, как бы на основе этой cms делать многоязычные сайты, но пока ситуация вот…
                            0
                            Я уже покопался в системе, перевел шаблон Clouds и директорию type, а также перевел все, что необходимо в настройках. Но это решило вопрос только наполовину — половина надписей на русском. Полез смотреть, а в коде целая куча русского языка. Отправил Максиму письмо, предложил помочь сделать многоязычную версию (тем более CI имеет для этого встроенные средства), может действительно, что-то придумаем.
                            +1
                            Уже который месяц вынашиваю мыслю разрабатывать систему на CI, но удерживает меня только то что очень многие этого не оценят, вплане разработки на готовом фреймворке, хотя уже довольно многие модули написанны такие как Новости Сообщества Блоги и без проблем можно было бы дать отпор клонам хабра и тому же дле :)
                              +1
                              Я, тоже, в свое время, озадачился подобной проблемой легкой, простой и универсальой (не только блог-ориентированной) CMS на CI — не нашел. Неделю думал, как ее написать так, чтобы самому почти ничего не писать )) Еще за неделю написал. Если кому интересно -вот состав:
                              — CI 1.7.0 (недавно перевел)
                              — PhpMyEdit — админко-посстроитель (его переработал в библиотеку CI, добавил FCK-editor, календарь для дат, возможность загрузки файлов и возможность заведения полей без наличия соответствующего столбца в БД).
                              — JQuery (для пары примочек)
                              — BluePrint CSS-framework (из-за лени)

                              Итого. Сутки на причесывание PhpMyEdit. Потом сутки на админ. Пять дней на плагины и вывод:
                              — многоязычность
                              — ленты новостей (статей) с комментированием, тегами и rss по вкусу
                              — фотогалереи
                              — каталог товаров с корзинкой и заказом
                              — каталог с подбором по параметрам
                              — простенький поиск
                              — всякие мелочи, типа форм обратной связи, карт сайтов и т.п.

                              P.S. не считаю себя программистом, скорее веб-мастером. Показать — пока не покажу, поскольку все пока очень сырое. Я пишу к тому, чтобы показать, что все не так страшно, было-бы желание.
                                0
                                На самом деле, круто. А у вас есть желание в итоге выложить это в виде готового продукта?
                                  0
                                  Да надо бы, чтобы народ меня носом потыкал в матчасть… Сейчас пару сайтов на ней сделаю, посмотрю, как в админке себя будет чувствовать среднестатистическая секретарша и скорее всего выложу ))
                                    0
                                    Ну так мы все еще ждем ;)
                                    Если вам сложно (или нет времени) все собрать в единый продукт — вы дайте знать, желающие организовать обязательно найдутся. Вот взять меня — я с удовольствием организую.
                                      0
                                      Делаю нормальную бету. В начале января будет.
                                  0
                                  Спасибо за идею с PhpMyEdit — оказалась очень-очень кстати.
                                    0
                                    Да, штука хорошая. Я ее с 2003 года использую.
                                  0
                                  Парни из Silverstripe.org пошли по этому же пути — CMS на основе PHP-фреймворка. У них, насколько я понял, самописный Sapphire, и сверху приложение — CMS. Очень разумно сделано — без проблем можно добавить другое приложение или другую CMS; фреймворк и CMS не перемешаны неразрывно.
                                    0
                                    Каюсь, PhpMyEdit + СI — это грабли. PhpMyEdit надо почти полностью переписывать.
                                    Пробую www.rapyd.com/
                                      0
                                      Сейчас появилась cogear.ru/
                                        0
                                        Мой новый проект — CMS на CodeIgniter dakota-cms.com/

                                        Регистрируйтесь, заполните профиль.

                                        Пишите на форуме, комментируйте новости

                                        Можно всякую ерунду, для тестов.

                                        обо всех ошибках пишите тут
                                        dakota-cms.com/forums/display/1

                                        Исходники и статья на хабр будут доступны чуть позже.
                                          0
                                          Новая версия Dakota CMS доступна в демо-панели и для скачивания
                                          Демо (рус.)
                                          Demo (eng)

                                          Основное нововведение — i18n. Теперь проект живет а англ. и русской версии, и количество возможных локализаций неограничено

                                          Весь changelog — dakota-cms.com/changelog.txt

                                          Скачать Dakota CMS 0.4

                                          Интересует мнение коллег по системе на Codeigniter!
                                            0
                                            Спасибо за сообщение.

                                            А насколько важно требование PHP 5.2? Я уже собирался поставить и протестировать вашу CMS на конкретном сайте и вдруг уперся в это требование. У меня на всех хостингах Centos5 и, соответственно, PHP 5.1.6. Делать апгрейд ради одной CMS не очень хочется. Тем более странно, что по своей философии CodeIgniter как раз заточен на максимальную совместимость со старыми версиями PHP и баз данных.

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

                                          Самое читаемое