development

  • Совет по Joomla: несколько значений по умолчанию в XML-формах для стандартных полей типа list

    👩‍💻 Совет по Joomla: несколько значений по умолчанию в XML-формах для стандартных полей типа list.При работе над плагином возникла необходимость указать стандартный набор из нескольких элементов стандартного поля списка. И хотелось указать их в стандартном же атрибуте default для полей. Когда это нужно?Когда Ваши пользователи устанавливают плагин и НЕ заходят в настройки - в коде вы можете использовать значения по умолчанию с помощью класса Registry (писал об этом ранее) и всегда быть уверенным, что хоть какие-то жизненно необходимые параметры к вам придут всегда. 🧐 Но как сделать то же самое для интерфейса админки?Пользователя нужно направлять, предлагать очевидный работоспособный сценарий для начала, а дальше он уже сам разберется. Когда человек заходит в параметры свежеустановленного плагина в Form ещё нет данных и параметры по умолчанию выставляются из атрибутов default в xml-полях.

    <field name="showdesc" type="radio"                       label="PLG_CFI_PARAM_SHOWDESC"                       class="btn-group btn-group-yesno"                       default="1">                    <option value="0">JNO</option>                    <option value="1">JYES</option>                </field>
    Здесь по умолчанию будет включено "Да". И если пользователь не переключит параметр, то при сохранении мы ожидаемо получим "да" в params плагина.Для поля списков type=&quot;list&quot; можно указать значение по умолчанию и многие знают, что его можно указать только одно.
    <field type="list"                       name="article_fields"                       label="article_fields"                       description="article_fields_desc"                       layout="joomla.form.field.list-fancy-select"                       multiple="true"                       default="id"                >                    <option value="id">id</option>                    <option value="title">title</option>                    <option value="alias">alias</option>                    <option value="introtext">introtext</option>                    <option value="fulltext">fulltext</option>                    <option value="state">state</option></field>
    Но у нас поле с множественным выбором (атрибут multiple) и хотелось бы указать несколько значений по умолчанию...Оказывается, так можно сделать. Для этого в атрибуте default нужно указать json с нужными параметрами в виде {int}key : {string} value.Например, default='{"0":"id","1":"title"}'.
    <field type="list"                       name="article_fields"                       label="article_fields"                       description="article_fields_desc"                       layout="joomla.form.field.list-fancy-select"                       multiple="true"                       default='{"0":"id","1":"title"}'                >                    <option value="id">id</option>                    <option value="title">title</option>                    <option value="alias">alias</option>                    <option value="introtext">introtext</option>                    <option value="fulltext">fulltext</option>                    <option value="state">state</option></field>
    ⚠️ Обратите внимание на кавычки! Поскольку json_decode не понимает одинарные кавычки собственно json нужно писать с двойными, а значение для атрибута default писать в одинарные.🙏 За подсказанное решение огромное спасибо участникам нашего сообщества - разработчикам Дмитрию Васюкову (@fictionlabs) и Игорю Бердичевскому (@septdir).@joomlafeed#joomla #разработка #webdev #development

  • SW JProjects v.2.4

    SW JProjects v.2.4

    SW JProjects v.2.4.0 - обновление менеджера цифровых проектов для Joomla разработчиковКомпонент позволяет разработчикам сайтов на Joomla вести свой собственный сервер обновлений для своих расширений Joomla (шаблонов, модулей, плагинов и т.д.), что позволяет доносить обновления сразу всем своим клиентам. Возможность скачивания по лицензионным ключам.👩‍💻 v.2.4.0. Что нового?Плагин логирования действий пользователя. Добавлен плагин группы Лог действий, записывающий все основные действия пользователя в компоненте SW JProjects в лог действий пользователя.Мультиязычность.Улучшена работа компонента (панель администратора) на мультиязычных сайтах.Исправление ошибок и рефакторинг. Проведен текущий рефакторинг и исправление некоторых ошибок.Страница расширенияGitHub расширенияJoomla Extensions Directory@joomlafeed#расширения #joomla #php #разработка #development

  • SW JProjects v.2.3.0 - обновление менеджера цифровых проектов для Joomla разработчиков

    SW JProjects v.2.3.0 - обновление менеджера цифровых проектов для Joomla разработчиков

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

  • SW JProjects v.2.3

    SW JProjects v.2.3

    SW JProjects v.2.3.0 - обновление менеджера цифровых проектов для Joomla разработчиковКомпонент позволяет разработчикам сайтов на Joomla вести свой собственный сервер обновлений для своих расширений Joomla (шаблонов, модулей, плагинов etc), что позволяет доносить обновления сразу всем своим клиентам. Возможность скачивания по лицензионным ключам.👩‍💻 v.2.3.0. Что нового?Поле домен для ключа. В форму создания ключа добавлено поле домен. Поле хранится в отдельной ячейке таблицы базы данных.Новый раздел: ключи пользователя.Во фронтенд добавлен новый раздел - ключи пользователя. Вы можете создать пункт меню для пользователя, где он сможет увидеть список всех своих лицензионных ключей. Раздел доступен только авторизованным пользователям сайта.Мелкие исправления и рефакторинг. Несколько мелких исправлений ошибок и улучшений.Страница расширенияGitHub расширенияJoomla Extensions Directory@joomlafeed#расширения #joomla #php #разработка #development

  • Совет по Joomla: метод debug() для отладки лейаутов

    Совет по Joomla: метод debug() для отладки лейаутов

    В Joomla есть понятие layout. Это кусочек вёрстки, который можно многажды использовать в любом месте сайта: как в панели администратора, так и во фронтенде. Можно рассматривать лейауты как оторванные от контекста элементы дизайна. Находятся они в папке layouts в корне сайта. Также, в случае с модулями они могут находиться в папке tmpl модуля. А в случае с плагинами - в tmpl плагина.

  • E-mail шаблоны Joomla 5: добавление и просмотр своих переменных

    В Joomla 5 появились настраиваемые email-шаблоны, как системные, так и сторонних компонентов. Их нельзя (пока что) добавить самостоятельно, они добавляются расширениями при установке. Но их можно отредактировать в Система - Шаблоны - Шаблоны писем. В настройках шаблонов писем (кнопка настроек компонента в верхнем правом углу) мы выбираем формат писем текст или HTML. Тогда становятся доступны настройки макетов шаблонов писем Joomla. Эти глобальные параметры можно переопределить в каждом конкретном email-шаблоне. Таким образом для каждого из email-шаблонов можно указать свою вёрстку и настройки логотипа.

  • Переменная RETURN или как вернуть пользователя в свой компонент

    Переменная RETURN или как вернуть пользователя в свой компонент

    Нетривиальная задача. Необходимо было из условного компонента «А» отправить пользователя в форму редактирования контента компонента «Б». При этом сделать так, чтобы при нажатии кнопки «Закрыть» в компоненте «Б», пользователь возвращался в компонент «А». Всё вышеописанное происходило в в административной панели сайта.

  • Триггеры ядра Joomla при CRUD-операциях

    Триггеры ядра Joomla при CRUD-операциях

    CRUD - аббревиатура основных операций с данными: создание (Create), чтение (Read), изменение (Update) и удаление (Delete). Практически все действия на сайте как в админке, так и пользовательской части можно описать этими действиями. Разработчикам при создании функционала часто в какие-то моменты этих действий нужно проделать некие действия с участием данных или без них.

  • SW JProjects v.2.2.0 - обновление менеджера цифровых проектов для Joomla разработчиков

    SW JProjects v.2.2.0 - обновление менеджера цифровых проектов для Joomla разработчиков

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

  • Как добавить свой повторяемый элемент интерфейса в класс HTMLHelper Joomla 4+

    Как добавить свой повторяемый элемент интерфейса в класс HTMLHelper Joomla 4+

    В API Joomla есть полезный инструмент - класс HTMLHelper. Он выводит HTML-элементы интерфейса с нужными параметрами: модальные окна, аккордеоны, табы, изображения и т.д. Для рендера мы передаём все нужные данные: заголовки окон, содержимое табов, атрибуты изображений.

  • SW JProjects v.2.1.0 - обновление менеджера цифровых проектов для Joomla разработчиков

    SW JProjects v.2.1.0 - обновление менеджера цифровых проектов для Joomla разработчиков

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

  • Joomla разработчикам: как починить пагинацию в своих расширениях для Joomla 5.1.3+

    Это информация о возможном сломе обратной совместимости в классе Pagination Joomla 5.1.3+. Релиз 5.1.3 был связан с закрытием уязвимостей. В нём был изменён подход к генерации ссылок для страниц пагинации.

  • Совет по Joomla: использование методов плагинов в любом месте Joomla 4 / Joomla 5

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

    • копировать код везде (выкидываем принцип DRY - don't repeat yourself)
    • делать простой трейт в одном плагине и обращаться к нему (в Joomla 3 так обычно не делали)
    • делать библиотеку отдельным расширением пакета. Но как-то странно так заморачиваться ради одного метода
  • Совет по Joomla: использовать HTMLHelper для рендера ссылок, изображений и т.д.

    Совет по Joomla: использовать HTMLHelper для рендера ссылок, изображений и т.д.

    При работе с кодом хорошим тоном разработки считается наглядность кода, которая обеспечивает лёгкость его восприятия. Обычно это называют "чистый, читаемый код". Согласитесь, понимать следующую запись не всегда бывает удобно:

Joomla!® CMS — пожалуй, лучшая система управления контентом с открытым исходным кодом

Логотип Joomla

Joomla! — это больше, чем просто программное обеспечение, это люди, включающие разработчиков, дизайнеров, системных администраторов, переводчиков, копирайтеров, и, что самое главное — простых пользователей.

Мы рады пригласить вас в ряды нашего сообщества!

Свернуть

Новости портала

Новое в блогах

Видео