Новости Joomla

👩‍💻 Joomla включена в программу Google Summer of Code 2026.

👩‍💻 Joomla включена в программу Google Summer of Code 2026.

Google Summer of Code (GSoC) - программа компании Google, которая позволяет участникам программы под руководством опытных наставников писать код для организаций, занимающейся открытым исходным кодом. Joomla принимает участие в этой программе не в первый раз и в 2026 году снова включена в список GSoC. Для программы утверждается список "идей", воплотить которые должны участники под руководством наставников.

Проекты Joomla в рамках программы GSoC 2026.

Проект I: Ajax-бэкенд.
- Действия в административной панели без необходимости обновлять страницу.
- Автоматическое сохранение содержимого во время редактирования.
- Расширенный фильтр - поиск и фильтрация по пользовательским полям.

Проект II: Автоматизация рабочих процессов (workflow + task scheduler).
Joomla имеет функцию процессов и планировщика задач. Теперь эти две функции следует объединить, чтобы пользователь мог настраивать назначенные рабочие процессы таким образом, чтобы переходы выполнялись автоматически, с возможностью точного определения времени. Должна быть возможность создавать циклы или прямые запланированные рабочие процессы. Предполагается, что интерфейс должен учитывать хороший пользовательский опыт, удобство использования и современные стандарты доступности. Ожидается, что будет добавлен интерфейс для управления процессами и их расписанием на страницах категорий и материалов. Так же ожидается, что сторонние компоненты также смогут воспользоваться этим функционалом.

Проект III: Мультикатегории.
В настоящее время Joomla! не позволяет назначать один элемент нескольким категориям. Хотя система тегов часто используется в качестве замены, существует острая потребность в нативной поддержке нескольких категорий, чтобы привести Joomla! в соответствие с другими современными системами управления контентом.

Проект IV: Обучение с подкреплением на основе отзывов переводчиков.
Joomla собирается использовать автоматический перевод документации. В каждом языке есть свои специфические слова, характерные для Joomla. Предполагается обучать языковые модели, используя обратную связь от переводчиков, чтобы постоянно улучшать качество переводов и учитывать специфические языковые особенности Joomla.

Принять участие GSoC 2026
Подробнее о проектах Joomla GSoC 2026
Чат GSoC в Mattermost (международное сообщество Joomla)

Вышли релизы Joomla 6.0.3 и Joomla 5.4.3

Релиз Joomla 6.0.3 и Joomla 5.4.3

Проект Joomla рад сообщить о выпуске Joomla 6.0.3 и Joomla 5.4.3. Это релиз исправлений ошибок и улучшений для серии Joomla 6.0 и Joomla 5.4.

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями Joomla и использовании FieldsHelper.

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями Joomla и использовании FieldsHelper.

В процессе работы с Joomla бывает необходимо работать с пользовательским интерфейсом более тонко, чем обычно. Все формы Joomla состоят из стандартных полей, содержанием, стилем отображения, состоянием (включено/выключено, доступно для редактирования или нет и т.д.) можно управлять с помощью плагинов. Да и для нестандартных проектов хорошей практикой является создание одного системного или нескольких плагинов групп "под проект", в которых храниться весь "нестандарт".

В этой статье описаны все триггеры, которые вызываются через Event Dispatcher из administrator/components/com_fields/src/Helper/FieldsHelper.php, с привязкой к жизненному циклу (порядку этапов работы запроса), аргументам, изменяемым данным и дальнейшему распространению по Joomla. Это поможет вам работать с Joomla свободнее и не опасаясь при этом потерять изменения при очередном обновлении движка.

Подходы, описанные в статье, полезны в тех случаях, когда вы работаете с данными в com_fields - механизме создания и редактирования пользовательских полей ядра Joomla и при использовании FieldsHelper. Многие сторонние компоненты не используют эту возможность, поэтому данная статья будет полезна лишь частично.

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

fakim0n

  • Новичок
  • 8
  • 0 / 0
Локализация модуля IceBoking
« : 22.03.2011, 13:53:31 »
Добрый день! Прошу совета по локализации http://www.icejoomla.com/extensions/icebooking, пробовал переписать языковый файл http://www.icejoomla.com/downloads/extension-extras, я так понял он просто добавляется в таблицу:

<?php
defined('_JEXEC') or die ( 'Restricted access' );


class LanguageInstaller
{
    var $_languageTag = 'en-GB';
    var $_context = 'Apartments';

    var $positions;


    /**
     * Install a language into the icebooking database
     * @param  $db A JDatabase resource
     * @return bool True if install successfull
     */
    function install(&$database)
    {
        $query = "REPLACE INTO `#__katla_languages` (`language`, `key`, `value`, `instance`, `position`, `type`, `hidden`) VALUES
            ('en-GB', 'ITEM', 'Apartment:', 'Order form', '1', '1', 0),
            ('en-GB', 'AMOUNT', 'Amount:', 'Order form', '1', '1', 0),
            ('en-GB', 'ARRIVAL', 'Arrival:', 'Order form', '1', '1', 0),
            ('en-GB', 'DEPARTURE', 'Departure:', 'Order form', '1', '1', 0),
            ('en-GB', 'ORDER_RECEVICE_FOR', 'Order information', 'Order form', '1', '1', 0),
            ('en-GB', 'SUBMIT_CONTINUE', 'Continue', 'Order form', '1', '1', 0),
            ('en-GB', 'FIRSTNAME_REQUIRED', 'Firstname is required', 'Order form', '1', '1', 0),
            ('en-GB', 'LASTNAME_REQUIRED', 'Lastname is required', 'Order form', '1', '1', 0),
            ('en-GB', 'PHONE_REQUIRED', 'Phone is required', 'Order form', '1', '1', 0),
            ('en-GB', 'EMAIL_REQUIRED', 'Email is required', 'Order form', '1', '1', 0),
            ('en-GB', 'EMAIL_CONFIRMATION_ERROR', 'Email mismatch', 'Order form', '1', '1', 0),
            ('en-GB', 'SELECT_COUNTRY', 'Country not selected', 'Order form', '1', '1', 0),
            ('en-GB', 'CITY_REQUIRED', 'City is required', 'Order form', '1', '1', 0),
            ('en-GB', 'ADDRESS_REQUIRED', 'Address is required', 'Order form', '1', '1', 0),
            ('en-GB', 'ZIP_REQUIRED', 'Zip is required', 'Order form', '1', '1', 0),
            ('en-GB', 'ADULTS_REQUIRED', 'There must be one or more', 'Order form', '1', '1', 0),
            ('en-GB', 'NUMBERS_ONLY', 'Numbers only allowed', 'Order form', '1', '1', 0),
            ('en-GB', 'EMAIL_INVALID', 'Invalid email address', 'Order form', '1', '1', 0),
            ('en-GB', 'ERROR_TERMS', 'You must agree to continue', 'Order form', '1', '1', 0),
            ('en-GB', 'BOOKING_CONTINUE', 'Place booking', 'Order form', '1', '1', 0),
            ('en-GB', 'ORDER_INFORMATION', 'Order information', 'Order form', '1', '1', 0),
            ('en-GB', 'CONTACT_INFORMATION', 'Booking details', 'Order form', '1', '1', 0),
            ('en-GB', 'FIRSTNAME', 'Firstname:', 'Order form', '1', '1', 0),
            ('en-GB', 'LASTNAME', 'Lastname:', 'Order form', '1', '1', 0),
            ('en-GB', 'EMAIL', 'Email:', 'Order form', '1', '1', 0),
            ('en-GB', 'EMAIL_CONFIRMATION', 'Email confirmation:', 'Order form', '1', '1', 0),
            ('en-GB', 'PHONE', 'Phone:', 'Order form', '1', '1', 0),
            ('en-GB', 'PHONE2', 'Phone2:', 'Order form', '1', '1', 0),
            ('en-GB', 'COUNTRY', 'Country:', 'Order form', '1', '1', 0),
            ('en-GB', 'CITY', 'City:', 'Order form', '1', '1', 0),
            ('en-GB', 'ADDRESS', 'Address:', 'Order form', '1', '1', 0),
            ('en-GB', 'ZIP', 'Zip:', 'Order form', '1', '1', 0),
            ('en-GB', 'MESSAGE', 'Message:', 'Order form', '1', '1', 0),
            ('en-GB', 'PAID', 'Paid:', 'Other', '1', '1', 0),
            ('en-GB', 'BOOKING_STATUS', 'Booking status:', 'Order form', '1', '1', 0),
            ('en-GB', 'ADULTS', 'Adults:', 'Order form', '1', '1', 0),
            ('en-GB', 'CHILDRENS', 'Childrens:', 'Order form', '1', '1', 0),
            ('en-GB', 'OTHER_AVAILABLE_ITEMS', 'Other available apartments', 'Order form', '1', '1', 0),
            ('en-GB', 'ACCEPT_TERMS', 'I accept terms of agreement', 'Order form', '1', '1', 0),
            ('en-GB', 'AGREE', 'Agree', 'Order form', '1', '1', 0),
            ('en-GB', 'DISAGREE', 'Disagree', 'Order form', '1', '1', 0),
            ('en-GB', 'PENDING', 'Pending', 'Order form', '1', '1', 0),
            ('en-GB', 'CONFIRMED', 'Confirmed', 'Order form', '1', '1', 0),
            ('en-GB', 'ERROR', 'Oh no! something went wrong, please try again or give us a call.', 'Other', '1', '1', 0),
            ('en-GB', 'OLD_BROWSER', 'Please update your browser if it does not support javascript!', 'Other', '1', '1', 0),
            ('en-GB', 'JANUARY', 'January', 'Other', '1', '1', 0),
            ('en-GB', 'FEBRUARY', 'February', 'Other', '1', '1', 0),
            ('en-GB', 'MARCH', 'March', 'Other', '1', '1', 0),
            ('en-GB', 'APRIL', 'April', 'Other', '1', '1', 0),
            ('en-GB', 'MAY', 'May', 'Other', '1', '1', 0),
            ('en-GB', 'JUNE', 'June', 'Other', '1', '1', 0),
            ('en-GB', 'JULY', 'July', 'Other', '1', '1', 0),
            ('en-GB', 'AUGUST', 'August', 'Other', '1', '1', 0),
            ('en-GB', 'SEPTEMBER', 'September', 'Other', '1', '1', 0),
            ('en-GB', 'OCTOBER', 'October', 'Other', '1', '1', 0),
            ('en-GB', 'NOVEMBER', 'November', 'Other', '1', '1', 0),
            ('en-GB', 'DECEMBER', 'December', 'Other', '1', '1', 0),
            ('en-GB', 'MONDAY', 'Monday', 'Other', '1', '1', 0),
            ('en-GB', 'TUESDAY', 'Tuesday', 'Other', '1', '1', 0),
            ('en-GB', 'WEDNESDAY', 'Wednesday', 'Other', '1', '1', 0),
            ('en-GB', 'THURSDAY', 'Thursday', 'Other', '1', '1', 0),
            ('en-GB', 'FRIDAY', 'Friday', 'Other', '1', '1', 0),
            ('en-GB', 'SATURDAY', 'Saturday', 'Other', '1', '1', 0),
            ('en-GB', 'SUNDAY', 'Sunday', 'Other', '1', '1', 0),
            ('en-GB', 'MONDAY_MIN', 'Mo', 'Other', '1', '1', 0),
            ('en-GB', 'TUESDAY_MIN', 'Tu', 'Other', '1', '1', 0),
            ('en-GB', 'WEDNESDAY_MIN', 'We', 'Other', '1', '1', 0),
            ('en-GB', 'THURSDAY_MIN', 'Th', 'Other', '1', '1', 0),
            ('en-GB', 'FRIDAY_MIN', 'Fr', 'Other', '1', '1', 0),
            ('en-GB', 'SATURDAY_MIN', 'Sa', 'Other', '1', '1', 0),
            ('en-GB', 'SUNDAY_MIN', 'Su', 'Other', '1', '1', 0),
            ('en-GB', 'SELECT_ITEM', 'Select apartment', 'Module', '2', '1', 0),
            ('en-GB', 'NIGHTS', 'Nights', 'Module', '2', '1', 0),
            ('en-GB', 'NIGHT', 'Night', 'Module', '2', '1', 0),
            ('en-GB', 'CHECK_AVAILABILITY', 'Check availability', 'Module', '2', '1', 0),
            ('en-GB', 'ERROR_DEPARTURE_BEFORE_ARRIVAL', 'Departure is before arrival', 'Module', '2', '1', 0),
            ('en-GB', 'ERROR_ARRIVAL_PAST', 'Arrival is in the past', 'Module', '2', '1', 0),
            ('en-GB', 'ERROR_DEPARTURE_PAST', 'Departure is in the past', 'Module', '2', '1', 0),
            ('en-GB', 'ERROR_RECHECK_DATES', 'Please recheck dates', 'Module', '2', '1', 0),
            ('en-GB', 'ARRIVAL', 'Arrival', 'Module', '2', '1', 0),
            ('en-GB', 'DEPARTURE', 'Departure', 'Module', '2', '1', 0),
            ('en-GB', 'MORE_INFORMATION', 'More information', 'Availability', '1', '1', 0),
            ('en-GB', 'BOOK_THIS', 'Book this apartment', 'Availability', '1', '1', 0),
            ('en-GB', 'ITEM_UNAVAILABLE_TEXT', 'The selected apartment is unavailable, please try selecting other dates for this apartment.', 'Availability', '1', '1', 0),
            ('en-GB', 'ITEM_BOOKED_MESSAGE', 'Your booking has been reserved, thank you for choosing our services.', 'Availability', '1', '1', 0),
            ('en-GB', 'CUSTOMER_EMAIL_SUBJECT', 'Your reservation...', 'Emails', '1', '1', 0),
            ('en-GB', 'CUSTOMER_EMAIL_BODY', '<p>{logo}<br /><br /> {firstname} {lastname}<br />{address}<br />{country}, {city} {zip}<br />Email {email}<br />Telephones: {phone}, {phone2}</p>
                <p> </p>
                <table border=\"0\">
                <tbody>
                <tr>
                <th style=\"text-align: left; padding-right: 20px;\">Booking ID<br /></th> <th style=\"text-align: left; padding-right: 20px;\">Apartment</th> <th style=\"text-align: left; padding-right: 20px;\">Arrival<br /> </th> <th style=\"text-align: left; padding-right: 20px;\">Departure<br /> </th> <th style=\"text-align: left; padding-right: 20px;\">Price<br /> </th>
                </tr>
                <tr>
                <td style=\"text-align: left; padding-right: 20px;\">{booking_id}</td>
                <td style=\"text-align: left; padding-right: 20px;\">{item_booked}</td>
                <td style=\"text-align: left; padding-right: 20px;\">{arrival}</td>
                <td style=\"text-align: left; padding-right: 20px;\">{departure}</td>
                <td style=\"text-align: left; padding-right: 20px;\">{amount_total}<br /></td>
                </tr>
                </tbody>
                </table>
                <p><strong> </strong></p>
                <p>Thank you for choosing our service! We hope you will enjoy your stay!</p>', 'Emails', '1', '2', 0),
            ('en-GB', 'SELECT', '- select -', 'Other', '1', '1', 0),
            ('en-GB', 'GATEWAY_MESSAGE', '', 'Gateway', '1', '2', 0);";

        $query = utf8_encode($query);
        $database->setQuery($query);
        $database->query();
        return true;
    }

    function getTag()
    {
        return $this->_languageTag;
    }

    function getContext()
    {
        return $this->_context;
    }

    function getPositions()
    {
        $pos[] = 1;
        $pos[] = 2;
        return $pos;
    }
}



Вместе него переписал всё на русский по типу:

            ('ru-RU', 'NIGHTS', 'Ночи', 'Module', '2', '1', 0),
            ('ru_RU', 'NIGHT', 'НОчь', 'Module', '2', '1', 0),

После установки полезли квакозябры с кодировкой по типу (сек), что не так сделал? если щас вручную переправляю на русский то после сохраннния опять в квагозябры, остальные модули и компоненты все нормально воспринимают русский, куда копать?
*

Kyrsor

  • Захожу иногда
  • 317
  • 4 / 2
Re: Локализация модуля IceBoking
« Ответ #1 : 22.03.2011, 14:23:55 »
 UTF или CP1251 вы стандартным блокнотом правили файл?
*

fakim0n

  • Новичок
  • 8
  • 0 / 0
Re: Локализация модуля IceBoking
« Ответ #2 : 22.03.2011, 14:30:45 »
UTF или CP1251 вы стандартным блокнотом правили файл?
Правил в дриме UTF
потом пробовал в cp1251 никаких изменений
*

fakim0n

  • Новичок
  • 8
  • 0 / 0
Re: Локализация модуля IceBoking
« Ответ #3 : 22.03.2011, 15:46:45 »
/language/ru-RU/ru-RU.com_icebooking.ini
Файл после установки засунулся сюда!
В коде файла отображает все нормально, в самом компоненте квакозябры (
*

fakim0n

  • Новичок
  • 8
  • 0 / 0
Re: Локализация модуля IceBoking
« Ответ #4 : 22.03.2011, 16:28:06 »
НИкто ничего не может подсказать толкового чтоли?  !
*

Kyrsor

  • Захожу иногда
  • 317
  • 4 / 2
Re: Локализация модуля IceBoking
« Ответ #5 : 22.03.2011, 17:43:32 »
Прикрепите файл тут, я попробую помочь!
*

fakim0n

  • Новичок
  • 8
  • 0 / 0
Re: Локализация модуля IceBoking
« Ответ #6 : 22.03.2011, 18:39:36 »
Прикрепите файл тут, я попробую помочь!


http://depositfiles.com/files/u86dedafo
*

SDKiller

  • Живу я здесь
  • 2705
  • 329 / 5
  • ...ergo sum
Re: Локализация модуля IceBoking
« Ответ #7 : 22.03.2011, 19:00:59 »
вы файлы шаблона компонента в utf8 без BOM пересохраните.
*

fakim0n

  • Новичок
  • 8
  • 0 / 0
Re: Локализация модуля IceBoking
« Ответ #8 : 22.03.2011, 19:19:01 »
вы файлы шаблона компонента в utf8 без BOM пересохраните.
А поподробнее можно пожалуйста?
*

fakim0n

  • Новичок
  • 8
  • 0 / 0
Re: Локализация модуля IceBoking
« Ответ #9 : 22.03.2011, 19:19:20 »
delete plz
*

Kyrsor

  • Захожу иногда
  • 317
  • 4 / 2
Re: Локализация модуля IceBoking
« Ответ #10 : 22.03.2011, 23:41:27 »
Так нужна еще помощь?
*

fakim0n

  • Новичок
  • 8
  • 0 / 0
Re: Локализация модуля IceBoking
« Ответ #11 : 23.03.2011, 06:19:20 »
Так нужна еще помощь?
да! Что не так ? где ошибся?
Это я про сообщение продублировалось не нащел кнопку удалить!
*

Kyrsor

  • Захожу иногда
  • 317
  • 4 / 2
Re: Локализация модуля IceBoking
« Ответ #12 : 23.03.2011, 23:52:03 »
Дайте мне файл в ТХТ, я не могу понять какой формат там.... у вас стоит!
*

nikola_blin

  • Захожу иногда
  • 145
  • 8 / 3
Re: Локализация модуля IceBoking
« Ответ #13 : 06.12.2011, 14:38:33 »
А есть у кого-нить сам дистрибутив icebooking? Чего-то в инете ничего не нашел...
*

qweer

  • Новичок
  • 2
  • 0 / 0
Re: Локализация модуля IceBoking
« Ответ #14 : 07.12.2011, 13:29:00 »
Здраствуйте!помогите пожалуйста разобраться.Вот для примера сайт http://online-new-films.ru/dorama/, там на странице несколько фильмов описаны по отдельности, по квадратам. Какое расширение Joomla надо скачать, чтобы так же оформить сайт?jочень Буду очень признателен.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Локализация скрипта обработки форм авторизации или регистрации

Автор Tyoma5891

Ответов: 7
Просмотров: 202128
Последний ответ 16.10.2013, 10:05:37
от Tyoma5891
Перевод модуля голосования Fly06 Poll Module v1.2 Beta Лучший модуль голосования!

Автор motor721

Ответов: 10
Просмотров: 11163
Последний ответ 23.07.2013, 14:34:04
от NlCK
Локализация XML полей по default

Автор SnowMan

Ответов: 1
Просмотров: 4247
Последний ответ 14.12.2012, 13:41:36
от SnowMan
Локализация редактора TinyMCE для Joomla! 1.5

Автор Greycat

Ответов: 6
Просмотров: 37547
Последний ответ 08.08.2012, 17:56:21
от terr
Локализация mod_jshopping_cart и mod_jshopping_login

Автор Мирон

Ответов: 4
Просмотров: 4445
Последний ответ 20.04.2012, 14:04:03
от artel-st