25 июля 2009

concrete5 CMS Русская Версия

Доброго времени суток!

Представляю вашему внимаю русскую локализацию замечательной системы управления контентом (CMS) concrete5.

После месяца волокиты я все же завершил локализацию и теперь concrete5 доступна полностью на русском языке.

Файл локализации охватывает самую последнюю на сегодняшний день версию concrete5 5.3.1.1. Этот файл подходит и для более ранних версий.

Чтобы русифицировать свою concrete5 самостоятельно, скачайте архив с файлом локализации ru_RU-UTF8-5.3.1.1.zip (140 Kb).

Кроме файла локализации я подготовил и дистрибутив concrete5 версии 5.3.1.1 с уже настроенной русской локализацией в комплекте. Процесс установки CMS на веб-сервер также полностью на русском языке. Скачать файл дистрибутива concrete5.3.1.1.ru_RU.UTF8.zip (7,16 Mb).

Прошу обсуждать все недостатки локализации, а также проблемы с установкой и работой в комментариях к этому посту.

Спасибо всем пользователям и разработчикам concrete5!

А специально для фанов concrete5 - интригую:
Скоро я выложу еще несколько вкусностей, пока они на стадии пре-альфа и в них обнаружено несколько багов, а также не достигнута запланированная функциональность.

54 комментария:

  1. Да, кстати, 12 часов назад вышла concrete 5.3.2. Посмотрю, поиграюсь. При необходимости - обновлю локализацию и дистриб.

    ОтветитьУдалить
  2. Анонимный25 июля 2009 г., 20:54

    Здравствуйте! Как с Вами можно связаться?

    Хотелось бы объединить усилия в работе над Concrete5.

    Пишите мне на gmail, почта/чат - evgeny.petukhov.

    ОтветитьУдалить
  3. Анонимный31 июля 2009 г., 21:22

    Так что там с версией 5.3.2?
    совместима эта локализация?

    ОтветитьУдалить
  4. Совместима, просто есть некоторые моменты где нужно обновить.

    Пока не могу найти время, чтобы доделать.

    ОтветитьУдалить
  5. На тему логотипа данной CMS:
    Demonoriz: "где-то я уже видел отпечаток белой ладони Сарумана..., а на чёрных рожах новых орков из саги Властелин Колец!!!"

    ОтветитьУдалить
  6. Бу-га-га! Юра, ты как всегда жжешь =)

    ОтветитьУдалить
  7. Спасибо! =)
    Стукни в ICQ, если не сложно 424восемь06,
    хотелось бы обсудить C5 и материалы с этого блога.
    С благодарностью, Веталь.

    ОтветитьУдалить
  8. =) Как только доберусь до своей машинки, сразу стукну =) Пока никак...

    ОтветитьУдалить
  9. По ссылке "файл дистрибутива concrete5.3.1.1.ru_RU.UTF8.zip2 не качает - 404 Not Found.

    ОтветитьУдалить
  10. "По ссылке "файл дистрибутива concrete5.3.1.1.ru_RU.UTF8.zip2 не качает - 404 Not Found."
    Глюк Оперы.

    ОтветитьУдалить
  11. Так такого файла не существует. Вы что-то не то качаете =)
    concrete5.3.1.1.ru_RU.UTF8.zip2 вы пишете,
    concrete5.3.1.1.ru_RU.UTF8.zip - правильный файл,

    2ка в конце файла левая. Чей глюк не знаю, опера, эксплорер, гугл хром, мозилла, ффокс, мидори, арора качают. Я веб-разработчик и тестирую свои сайт и даже блог на всех браузерах. Проверено 100%.

    Проблема где-то у вас.

    ОтветитьУдалить
  12. Добрый день, уважаемые! Если мне не изменяет память, то в WP реализована возможность локализации без предустановленного на сервере getttext. Есть ли возможность осуществить это в C5? Папочку с локализацией закинул в langugage, прописал define('LOCALE', 'ru_RU')в site.php, зачистил кеш везде и всюду, результат нулевой. Прошу помощи. Заранее спасибо.
    MadBadjack.

    ОтветитьУдалить
  13. 1. Реализовать в c5 локализацию без gettext можно, но надо тогда написать замену gettext на PHP и внедрить это дело в c5. Короче не все так просто.

    2. Gettext также не будет правильно работать с локализацией если на сервере не установлена та локаль, которую мы ставим для c5. Т.е. если (как у меня) define('LOCALE', 'ru_RU.UTF-8'), то на сервере должна быть поддержка ru_RU.UTF-8 для gettext, иначе ничего не произойдет.

    ОтветитьУдалить
  14. gettext установил на сервер, но ничего не изменилось.
    "Gettext также не будет правильно работать с локализацией если на сервере не установлена та локаль, которую мы ставим для c5. Т.е. если (как у меня) define('LOCALE', 'ru_RU.UTF-8'), то на сервере должна быть поддержка ru_RU.UTF-8 для gettext, иначе ничего не произойдет."
    Не могли бы Вы растольковать, какие именно шаги предпринять? Сервер на ОС Ubuntu.

    ОтветитьУдалить
  15. В Ubuntu нужно что-то типа этого. Конкретно по пакетам не скажу, но скажу так:
    1. Ставим language-support-ru. Это метапакет, он потянет за собой зависимостями все необходимые пакеты для поддержки русской локали.
    2. Далее глянем в /usr/lib/locale. Там должна быть обязательно папочка ru_RU.utf8
    3. PHP должен быть собран с поддержкой gettext. Если ставить пакет libapache2-mod-php5 (php5 как модуль для apache2), то в нем есть поддержка gettext:

    This package provides the PHP5 module for the Apache 2 webserver (as found in the apache2-mpm-prefork package). Please note that this package ONLY works with Apache's prefork MPM, as it is not compiled thread-safe.

    The following extensions are built in: bcmath bz2 calendar ctype date dba dom exif filter ftp [[[GETTEXT]]] hash iconv json libxml mbstring mime_magic openssl pcre posix Reflection session shmop SimpleXML soap sockets SPL standard sysvmsg sysvsem sysvshm tokenizer wddx xml xmlreader xmlwriter zip zlib.

    P.S. Это все точно касается Ubuntu 9.04, в других версиях возможно есть отличия в названиях пакетов, либо в их составе. В любом случае - разобрать несложно.

    ОтветитьУдалить
  16. Да, и еще одно!

    Есть такая либа для PHP - php-gettext:

    The GNU gettext library is a widely used localization library, but in order to use it with the PHP language, the system has to support the desired locale, and library itself must be installed.

    Since this is not always the case, PHP-gettext has been developed to be
    able to read gettext MO files directly, without requiring anything other
    than PHP.

    -----------------------------------------------------

    Проще говоря, это библиотечка для PHP, которая позволяет работать с MO-файлами (файлы локализации gettext) напрямую из PHP, без необходимости чтобы система на сервере поддерживала gettext и необходимую локаль. Единственное что я написал в первом ответе про gettext - нужно будет внедрить это в c5. Тут уже нужно смотреть насколько это будет просто. Я с этой библиотекой не работал, тонкостей не знаю.

    ОтветитьУдалить
  17. Большое спасибо! Сегодня займусь, надеюсь все заработает.

    ОтветитьУдалить
  18. Пошел по первому пути
    ""1. Ставим language-support-ru. Это метапакет, он потянет за собой зависимостями все необходимые пакеты для поддержки русской локали.
    2. Далее глянем в /usr/lib/locale. Там должна быть обязательно папочка ru_RU.utf8""
    пакет установился, папка имеется, перевод не осуществлен...чудеса. gettext работает, проверено.

    ОтветитьУдалить
  19. Посмотрим /concrete/config/base.php (не /config, а /concret/config)

    Должно быть что-то типа этого там чуть ниже начала:

    /**
    * Character support
    */

    if (!defined('APP_CHARSET')) {
    define('APP_CHARSET', 'UTF-8'); // pages, etc...
    }

    if (!defined('DB_CHARSET')) {
    define('DB_CHARSET', 'utf8'); // pages, etc...
    }

    if (!defined("DB_COLLATE")) {
    define('DB_COLLATE', '');
    }

    if (!defined('LOCALE')) {
    define("LOCALE", 'ru_RU.UTF-8');
    }


    /config/site.php не трогаем вообще.

    ОтветитьУдалить
  20. Дружище, спасибо Вам большое! После того, как убрал строчку
    define("LOCALE", 'ru_RU.UTF-8');
    из
    /config/site.php
    Все встало на свои места. Ну и, конечно же, это не заработало, если бы не подсказка про установку мета-пакета language-support-ru.
    Еще раз, большой СПАСИБО. С радостью помогу (если это конечно потребуется) с лицензиями для большинства популярных антивирусных продуктов. КАВ,КИС,ЭСЕТ,Авира и т.п. От трех мес., до 1,5- 2-х лет. Как правило, по окончанию срока, могу помочь вновь :)

    ОтветитьУдалить
  21. Ну вот и замечательно, что все встало на свои места. ;-)

    ОтветитьУдалить
  22. Как я понимаю, моя помощь не нужна :) А вот Ваша нужна вновь :(
    При попытке установить тему через админку, (после логина к офсайту) выкидывает в окошке следущее:

    ""Warning: file_exists() [function.file-exists]: open_basedir restriction in effect. File(/tmp/KqHJAj) is not within the allowed path(s): (/var/www/бла-бла/data:.) in /var/www/бла-бла/data/www/site.ru/concrete/helpers/file.php on line 132

    Warning: fopen() [function.fopen]: open_basedir restriction in effect. File(/1256223818.zip) is not within the allowed path(s): (/var/www/darktwin/data:.) in /var/www/бла-бла/data/www/site.ru/concrete/helpers/package.php on line 95

    Warning: fopen(/1256223818.zip) [function.fopen]: failed to open stream: Operation not permitted in /var/www/бла-бла/data/www/site.ru/concrete/helpers/package.php on line 95""
    Некорректно работает php или...???
    И еще вопрос в до

    ОтветитьУдалить
  23. И в догонку:
    - пытались Вы делать свои темы (переделывать сторонние темплэйтки) под C5? Если "да", то можно ли получить небольшой мануал по подстройки тем под стандарт CMS?
    Заранее спасибо,
    MadBadJack.

    ОтветитьУдалить
  24. Вот тебе, бабушка, и Юрьев день :( Следующий косячок -
    админка - заготовки - первая реакция:
    ""Warning: file_exists() [function.file-exists]: open_basedir restriction in effect. File(/ccm.filemanager.css) is not within the allowed path(s): (/var/www/darktwin/data:.) in /var/www/darktwin/data/www/7l0.ru/concrete/helpers/html.php on line 42""
    Далее меню отображается, но "бага" отображается в самом верху странички...Мдя, что то не верно у меня настроено для этой системки...

    ОтветитьУдалить
  25. Я сейчас в разъездах, не могу оперативно ответить.

    1. Хм-хм... Видимо что-то с настройкой прав доступа. Настройки сервера, настройки PHP, смотреть надо.

    2. Темы делал и не одну. Мануалы есть на официальном сайте, но вообще все просто.
    Тему помещаем в /themes/моя_тема
    Там должен быть файл description.txt, в котором одной строкой должно быть написано краткое описание, например: Это моя первая тема =)
    Там же должен быть файл thumbnail.png - это маленькая картинка - скриншот темы, он будет показываться в списке тем в админке.
    И, наконец, должен быть файл default.php - это обычная HTML-ка, она и есть шаблон. Там где будут вставляться блоки c5 должно быть прописано:

    < ? php
    $bla_bla = new Area('Название области');
    $bla_bla->display($c);
    ? >

    Вот и все, если кратко.

    Для каждого типа страниц можно создать свой файл. default.php - это тип страниц по умолчанию, т.е. он должен быть обязательно и он будет использоваться по умолчанию.

    3. Ну что-то с правами доступа к файлам напутано у вас.

    ОтветитьУдалить
  26. Да Бог с ним что не оперативно, главное что вообще отвечаете :)
    Что именно может быть с доступом? CHMOD?
    домен/concrete/helpers 777
    themes 777 ( в обоих сдучаяъ 777 выставленно только что, не помогло) по умолчанию было 755.
    Остальные папки в домен/concrete/ 755
    домен/files 777 с рекурсеей для поддиректорий и файлов. и для packages 777
    Остальное 755/ В кратце вот так.
    2. ""Темы делал и не одну.""
    А где то можно посмотреть - скачать? Или это коммерческий продукт?

    ОтветитьУдалить
  27. Может в настройках веб-сервера что-нить не так?

    А тем полно, можно бесплатно скачать на официальном сайте. Мои темы скачать нельзя, они специально для фирм делались и используются на сайтах. Также с concrete5 сразу в поставке 2 темы идет, можно их посмотреть.

    ОтветитьУдалить
  28. ""Может в настройках веб-сервера что-нить не так?""
    Видимо так, вопрос что.
    ""А тем полно, можно бесплатно скачать на официальном сайте""
    Мне ни одна не подходит.
    ""Также с concrete5 сразу в поставке 2 темы идет, можно их посмотреть.""
    Ну это я заметил сразу после установки :)))
    Попробую повозиться с темами по Вашего краткому уроку + что есть на офсайте. Пробовал ваять темы для Maxite CMS, неудачно :)

    ОтветитьУдалить
  29. В чем проблема сразу не скажу, нужно поэкспериментировать, а у меня совсем нет времени последние 3 недели.

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

    А также есть документация по созданию тем на официальном сайте concrete5 - там можно по шагам разобраться. И есть видеоролик на эту тему, где можно посмотреть принцип создания тем.

    ОтветитьУдалить
  30. Да, я примерно так и предполагаю сделать. Спасибо, еще раз. Кстати, меня зовут Максим. А то общаемся как то эфемерно, по нику называть как то не хочется :)

    ОтветитьУдалить
  31. Очень приятно! :)
    Павел, а Вы не могли бы кинуть основные настройки (которые могут влиять на процессы вызывающие мои ошибки) php.ini с Вашего сервера? Извините, что слишком часто напрягаю траблами, просто упертый я. Пока не решу проблему, не успокоюсь :D

    ОтветитьУдалить
  32. из всех cms - С5 наиболее адекватная для моих нужд
    спасибо за переводы.
    И, давайте создавать комьюнити по обширнее.
    К сожалению пока не видел готовых работ на C5 в сети.
    Было бы не плохо выкладывать сайты сделанные на C5
    Спасибо!

    ОтветитьУдалить
  33. В принципе, есть предложение...
    Работаю дизайнером - могу переделывать темы для C5
    Если заинтересует пиши на leonoff.rene {dog} gmail.com

    ОтветитьУдалить
  34. ОК. Буду знать.

    А вот большую коллекцию работ на concrete5 можно посмотреть на http://showcase.c5mix.com/

    Это каталог сайтов, созданных на c5.

    ОтветитьУдалить
  35. "В принципе, есть предложение...
    Работаю дизайнером - могу переделывать темы для C5" а я не занимаюсь коммерческим изготовлением сайтов, т.ч. тратить личные средства не готов :)
    Павел, по моей просьбе отбой?

    ОтветитьУдалить
  36. Максим, а нельзя убрать сайт из /var/www/

    Я занимался вашим вопросом, но не смог понять вашу ситуацию.

    ОтветитьУдалить
  37. Ммм, Павел, тут Вы меня в тупик ставите. Сомневаюсь, что возможно, т.к. это директория по умолчанию для всех многочисленных сайтов на контейнере. Могу скинуть Вам на почту настройки php.ini + все сервисы на на контейнере. У меня два варианта, либо чего то из сервисов не хватает, либо где то не стоит разрешение в тот самом php.ini

    ОтветитьУдалить
  38. Хорошо, скиньте. Я постараюсь разобраться. Давайте. Жду.

    ОтветитьУдалить
  39. Павел, отправил на ящик(dog)amiant.fatal.ru
    Спасибо за уделяемое время, очень признателен.

    ОтветитьУдалить
  40. Походу надо лучше на gmail.com отправить, что-то с fatal.ru проблемы.

    ОтветитьУдалить
  41. Исправился, переслал на gmail

    ОтветитьУдалить
  42. madbadjack => это вы к чему? про коммерцию?
    ---------------------------------------
    Не удалось у меня руссифицировать...

    ОтветитьУдалить
  43. "madbadjack => это вы к чему? про коммерцию?"
    -
    Я так понял, что Вы предлагаете платную "перенатяжку" шаблонов на C5, я посетовал, что у меня нет средств на сие. Если Вы предлагаете безвозмездно (или бартерно), то большой Вам ПЛЮС.
    "Не удалось у меня руссифицировать..."
    - У меня тоже не получалось, но Павел подсказал пару рецептов, все встало на свои места.
    Перечитайте ветку внимательно, вдруг где то пропустили деталь. Gettext стоит и фунциклирует?
    Локализация на сервере (ОС) установлена?
    Посты Павла от 19 Октябрь 2009 г. 17:22 + 21 Октябрь 2009 г. 0:06
    мне вот это помогло.

    ОтветитьУдалить
  44. Спасибо! Перечитываю.
    А что вам по дизайну надо?
    Я имел ввиду скооперироваться для совместной работы.

    ОтветитьУдалить
  45. "А что вам по дизайну надо?"
    Есть пару тем, которые мне действительно нравятся. Хотелось бы хотя бы одну из них "перекроить" под C5. Все что на офсайте С5 мне не нравится категорично, уже раз сто пересматривал, прикидывал как можно поменять картинки цвет фона, все равно совсем не то. А темки, которые у меня с http://www.freecsstemplates.org/
    Что касается объединения усилий, я могу только хостингом помочь проекту, а лично, участникам, я уже писал ранее (мой пост 21 Октябрь 2009 г. 2:39). Все в силе.

    ОтветитьУдалить
  46. Ребята, ну что под c5 переделывать? Любую страницу можно превратить в тему для c5. Это же элементарно. Даже думать нечего. =) Ржете блин или чего? Прекратите отжигать. Ну реально темы под c5 - это не процес, это шутка.

    ОтветитьУдалить
  47. Павел, ну не все так свободно (на "ты") с системой в частности и веб-версткой, вообще. :)Если честно, я просмотрел один раз инструкцию на офсайте, и по сути не особо понял. Для того что бы постоянно ставить на паузу (при этом пытаясь вникнуть в далеко не родной язык) и тут же ставить эксперементы, нужно как минимум часов 5-6. А для меня это нереально по определению. Работа - семья, семья - работа. :)

    ОтветитьУдалить
  48. Да, кстати, Concrete5 начиная с версии 5.4.0 работает без Gettext, используя Zend Gettext Adapter. Поэтому русификация теперь возможна и без установленного на хостинге gettext.

    ОтветитьУдалить
  49. Это хорошее решение :)Давно пора бы. Большинство популярных СМS давно уже русифицированы по-умолчанию. Меня в последнее время очень привлекли Websitebaker (для простых решений) и ModX (вообще).

    ОтветитьУдалить
  50. Я увлекался ModX года 2-3 назад, как раз искал что-то удобное и современное, а Concrete5 была еще совсем простенькая, так сказать, в стадии грудного ребенка. Но скажу одно - API у ModX какое-то путанное и мне не очень понравилось, не особо удобно в ModX для программиста. Сейчас вот появилась ModX 2, наблюдаю за ней, но не впечатляет как-то.

    ОтветитьУдалить
  51. ну в CMS Awards они почти всегда в тройке :) В 2009 второе место за WordPress (вот что мне реально не нравится)

    ОтветитьУдалить