Новости Joomla

Обновлена информация в Плане развития Joomla

👩‍💻 Обновлена информация в Плане развития Joomla.Здесь собрана информация о датах релизов, описаны принципы версионирования, указаны ответственные за релизы, а так же даты окончания поддержки релизов. Опираясь на эту информацию вы можете планировать развитие ваших интернет-проектов.👩‍💻 Что нового?⛔️ Joomla 4.Дата окончания исправления ошибок безопасности в версии 4.x - 14 октября 2025г. ⚠️ После этой даты Joomla 4 прекратит получать какие-либо обновления, в том числе безопасности - вообще. Рекомендуем обновить ваши сайты до актуальной Joomla 5.✅ Joomla 5.- Дата окончания исправления ошибок в версии 5.x - 13 октября 2026г.- Дата окончания исправления ошибок безопасности в версии 5.x - 12 октября 2027 года.- Текущая актуальная (на момент написания заметки) версия - 5.3.1.- Опубликовано расписание выхода релизов Joomla 5.4. Стабильный релиз ожидается 14 октября 2025 года.✅ Joomla 6.- Дата окончания исправления ошибок в версии 6.x - 17 октября 2028г.- Дата окончания исправления ошибок безопасности в версии 6.x - 16 октября 2029г.- Опубликовано расписание выхода релизов Joomla 6.0. Стабильный релиз ожидается 14 октября 2025 года.- Для разработчиков уже доступна Joomla 6.0.0-alpha1.✅ Joomla! Framework.Обновлена информация о Joomla! Framework - полноценном PHP-фреймворке для разработки. Он в версиях 1.х и 2.х был самостоятельным параллельным проектом, однако начиная с версии Joomla 4.0 стал её основой. Добавлена информация о Joomla! Framework 3.x, который вышел 6 октября 2023 года. Его можно использовать в тех случаях, когда вам в проекте не нужна CMS Joomla целиком.Подробнее на сайте Joomla-сообщества Joomlaportal.ru#joomla #community

Компания JetBrains рассказала о своей поддержке Joomla

Компания JetBrains рассказала о своей поддержке Joomla

JetBrains - один из мировых лидеров в разработке программного обеспечения для разработчиков. Её программные продукты - это IDE - профессиональные среды разработки, которые отличаются от простого блокнота/редактора с плагинами набором всевозможных инструментов для разработчиков, глубоким анализом кодовой базы, подсказками по ней и по языку программирования, отладкой ошибок и многим-многим другим. Одним из самых известных продуктов компании является IDE PHP Storm, который можно назвать отраслевым стандартом PHP-разработчика.

В статье How PhpStorm Helps Maintain PHP Open-Source Projects: Interviews and Real-World Examples в блоге компании описываются Open Source проекты, которым JetBrains оказывает поддержку (это могут быть бесплатные лицензии для разработчиков для некоммерческих проектов).

В список попали:

  • PHPUnit - фреймворк для unit-тестирования в PHP
  • Doctrine DBAL - библиотека для PHP, которая предоставляет лёгкий и гибкий слой для коммуникации с базой данных. Она поддерживает различные базы данных через единый и согласованный API.
  • CodeIgniter — популярный MVC-фреймворк для разработки на PHP
  • Joomla! - наша любимая CMS.

Эти названия (кроме "Joomla") чаще всего не слышат вебмастера и разработчики обычных сайтов и интернет-магазинов. Но эти названия хорошо знакомы PHP-разработчикам, которые создают сложные и высоконагруженные проекты и микросервисы. То, что Joomla оказалась в одном ряду с такими программными инструментами - делает ей честь.

🙏 За ссылку спасибо участнику нашего сообщества Ринату Кажетову (@rkazhet).

Подпишитесь на @joomlafeed

0 Пользователей и 1 Гость просматривают эту тему.
  • 3 Ответов
  • 34200 Просмотров
*

VannyVann

  • Осваиваюсь на форуме
  • 38
  • 4 / 0
Вот простая схема решения мультиязычности сайта которую я придумал для среднячковых сайтов типа "визитная карточка", т.е. закащик инфу менять почти небудет, но ему подавай супер-пупер админку и мультиязычный сайт...  crazy!

Ну вообщем..... принцип в том, что все языки хранятся в одном поле в базе, чтоб не дублировать ее, и разделены они специальным разделителем, который мы прописываем во всех ланг-файлах, допустим @@@
Кроме того в каждом ланг-файле делаем конст. _OFFSET с разными значениями, от 0 и дальше.., это индекс языка.

Код
DEFINE('_LANG_SEPARATOR','@lang@');
DEFINE('_OFFSET','0');       //for example 0-ru    1-de       2-en

Теперь для вывода достаточно написать простенькую ф-цию и юзать ее во всех компонентах, т.е. везде где идет вывод имени, описания и т.д и т.п. вместо
Код
echo $name;
написать
Код
echo lang($name);

Пример такой простой ф-ции:
Код
function lang($text){
   $text_sep=explode(_LANG_SEPARATOR,$text);
   return $text_sep[_OFFSET];
}
Т.е. в базе хранится "русский текст@lang@english text@lang@deutsch text" а выдает только нужный текст.
Делать мультиязычную админку тоже просто: перед отправкой формы, все поля с разными языками скрепляюстся со всеми розделителями  (или лучше уже при приеме формы - безопаснее ;))

Если есть вопросы или советы, отпишите. Я таким макаром уже наклепал проектов, интересно мнение мастеров о таком маневре, безопасно ли это и вообще разумно ли, и стоит ли продолжать.  ;)
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
*

VannyVann

  • Осваиваюсь на форуме
  • 38
  • 4 / 0
нате!!!!
http://crr.com.ua
http://container-ua.com
и еще один в завершении скоро будет....

Товарищи, стандартизируемся. ......и глупостей на форуме не пишем  8)

http://crr.com.ua
При переходе по ссылке для смены языка можно насобирать очень длинный URL типа "http://crr.com.ua/index.php?lang=russian&lang=russian&lang=russian&lang=russian&lang=english&lang=russian&lang=russian&lang=english&lang=russian"
Это не критично, т.к. $_GET['lang'] действительным будет последний, т.е. тот который выбран только-что. Но видок у адреса жутковатый.
СтОит проанализировать $_SERVER['QUERY_STRING'] и собрать только нужные переменные, передаваемые в массив $_GET, перед выводом ссылки &lang=language.

http://container-ua.com

Здесь при смене языка 100% попадаем на главную. А если, опять же, предварительно распарсить $_SERVER['QUERY_STRING'], то можно добиться смены языка на текущей странице.
Код: php
function ParsigQuery($cur_lang){
parse_str($_SERVER['QUERY_STRING'], $arr);
$arr["lang"] = $cur_lang;
$link = "?";
$keys = array_keys ($arr);
foreach ($keys as $item){
$link .= $item . "=" . $arr[$item] . "&";
}
$link = substr($link, 0, strlen($str)-1);
return $link;
}

// Example:
echo "<a href=" . ParsigQuery("english"). ">EN</a> | <a href=" . ParsigQuery("russian"). ">RU</a>";
« Последнее редактирование: 09.12.2009, 13:24:20 от Ko4iLa »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться