Joomla для разработчиков
103 subscribers
15 photos
62 links
Полезное из мира Joomla:
- документация для разработчиков и опытных пользователей;
- интересные находки.

Мы ВКонтакте - https://vk.com/jpathru
Наш веб-сайт - https://jpath.ru

Есть интересный материал? @drekun
Download Telegram
Joomla для разработчиков pinned «Какой метод добавляет косую черту перед небезопасными символами и оборачивает строку в одинарные кавычки в SQL запросах?»
А это у нас из рубрики #вопросотподписчика 😎

Как сделать вывод количества материалов рядом с пунктом меню категории

Давайте разберемся, как же вывести такой счётчик.

https://jpath.ru/practice/vyvod-kolichestva-materialov-ryadom-s-punktom-menyu-kategorii
В какой момент цикла выполнения Site приложения происходит первый вызов ```JFactory::getUser()```
Anonymous Quiz
46%
Маршрутизация и авторизация
8%
Диспетчеризация
46%
Инициализация
0%
Рендеринг
Joomla для разработчиков pinned «В какой момент цикла выполнения Site приложения происходит первый вызов ```JFactory::getUser()```»
Какой класс используется для валидации полей в формах Joomla?
Anonymous Quiz
44%
FormField
39%
FormValid
17%
FormRule
Приложения какого типа нет в Joomla 3?
Anonymous Quiz
2%
Site
67%
Daemon
16%
Api
9%
Cli
7%
Administrator
Какого HTML рендерера документа не существует в Joomla?
Anonymous Quiz
11%
Component
34%
Debug
11%
Head
37%
Message
8%
Module
Если предыдущий вопрос показался немного сложным, не расстраивайтесь ☺️

У нас есть замечательный материал, который раскрывает не только понятия Документ и Рендерер, но и подробно объясняет принцип вывода данных в Joomla.

Приятного чтения 👇

https://jpath.ru/docs/output/printsipy-vyvoda-dannykh-v-joomla
Наконец-то начата работа над метариалом о том, как программно создать материал в Joomla с настраиваемыми полями, используя Joomla API. Также будет полный обзор свойств материала, которые можно создать программно.

Следите за новостями 😎
Как программно создать материал с настраиваемыми полями на PHP

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

https://jpath.ru/practice/kak-programmno-sozdat-material-s-nastraivaemymi-polyami-na-php
[J4] Поля будут поддерживать data атрибуты

Казалось бы, такая простая вещь как data атрибут уже давно должна была быть составляющей частью стандартных полей. Но появится это только в Joomla 4, что не может не радовать. Ещё одна маленькая мелочь в копилку J4.👌

https://github.com/joomla/joomla-cms/pull/27212
Как называются специальные позиции (плейсхолдеры) в шаблоне для вывода содержимого?
Anonymous Quiz
13%
jtpl
8%
jmod
63%
jdoc
17%
jpos
Подготовь своё расширение к Joomla 4

Вчера вышла пятая бета Joomla 4. Разработчикам сторонних расширений уже сейчас стоит позаботиться о том, чтобы их расширения продолжали успешно работать и на Joomla 4.

Ниже вы найдете полный список изменений, описывающий потенциальную потерю обратной совместимости при переходе на Joomla 4.

https://docs.joomla.org/Potential_backward_compatibility_issues_in_Joomla_4
Использование Bootstrap в Joomla 4

Joomla 4 уже находится в стадии RC, не за горами выход стабильной версии. Поэтому начинаем потихоньку знакомиться с J4.

В этом материале рассмотрим, как правильно подключать Bootstrap в Joomla 4. Хотелось бы напомнить, что в Joomla 4 по умолчанию используется Bootstrap 5.

https://jpath.ru/docs/output/js-css/ispolzovanie-bootstrap-v-joomla-4
Как правильно подключать JavaScript и CSS в Joomla 4

В Joomla 4 появилась концепция Web Assets, которая упорядочила работу с JavaScript и CSS в Joomla. По сути каждый отдельный JS или CSS файл представляет собой ассет (ресурс).

В этом материале расскажем:
- о реестре скриптов и стилей
- как правильно подключать скрипты и стили
- как определять их зависимости
- как их переопределять и отключать
- как создавать пресеты скриптов и стилей
- как создавать пользовательский класс ассета

https://jpath.ru/docs/output/js-css/kak-pravilno-podklyuchat-javascript-i-css-v-joomla-4
Подготовка расширения к переходу на Joomla 4

Joomla 4 уже здесь, но обновление не всегда проходит гладко. Чаще всего из-за сторонних расширений.

Это попытка собрать в одном месте решения наиболее часто встречающихся проблем при переходе на Joomla 4.

Есть повод задуматься, а стоит ли так спешить с переходом? Joomla 3 будет с нами как минимум до середины августа 2023 года.

https://jpath.ru/practice/podgotovka-rasshireniya-k-perekhodu-na-joomla-4
Как и для чего использовать Dependency Injection Containers в Joomla

Потихоньку перетаскиваем материалы с Хабра к себе 😊

Спасибо С.Толкачёву за первоначальную публикацию 🤝

https://jpath.ru/docs/basics/dependency-injection-containers
🔥2👍1
Forwarded from WebTolkRu (Sergey Tolkachyov)
Layouts и subLayouts в Joomla
В Joomla есть понятие layout. Это кусочек вёрстки, который можно многажды использовать в любом месте сайта: как в панели администратора, так и во фронтенде. Можно рассматривать лейауты как оторванные от контекста элементы дизайна. Находятся они в папке layouts в корне сайта. Как их использовать? Один из вариантов - использование LayoutHelper.
use Joomla\CMS\Layout\LayoutHelper;

// $item - ваш объект или массив с данными, которые нужно использовать в верстке

echo LayoutHelper::render('components.swjprojects.project.icons', ['item' => $item]);

1-й аргумент - это dot-separated (разделенный точками) путь к файлу лейаута. Название папки
"layouts" в данном случае пропускается как само собой разумеющееся. На скриншоте путь отмечен цифрами 1-4. Внутрь файла приходит массив $displayData, в котором будет лежать наш $item - $displayData['item'].
extract($displayData);

echo '<button role="button" class="btn btn-primary">'.$item->title.'</button>';

Либо же, если макет можно раздробить на более мелкие примитивы - тулбар с иконками разбить на отдельные иконки - то можно использовать метод subLayout().
В первом примере кода мы "вошли" в лейаут icons. А в файле icons.php можно вызвать подмакеты. Для этого нужно создать рядом папку с таким же названием - icons. А в нём уже будут лежать файлы подмакетов.
// icons.php
extract($displayData);

// обращаемся к /icons/downloads.php
echo $this->sublayout('downloads', $displayData);

// обращаемся к /icons/hits.php
echo $this->sublayout('hits', $displayData);

Передавать туда можно как целиком $displayData, так и какую-то часть от него. Тут уже как вам удобно.

Также помним, что файлы из layouts подвержены переопределениями в шаблонах.

Где это применимо? Да в принципе везде, хотя данный пример относится к разработке компонента.

@webtolkru

#joomla #development #php #разработка
🔥5
Forwarded from Joomla Feed (Sergey Tolkachyov)
Как добавить свой таб или поле в интерфейс Joomla с помощью плагина. «Joomla way».
Задачи могут быть самые разные: поле аватара для пользователя в com_users, дополнительный таб в форму редактирования материала, поле связи одной сущности с другой и т.д. Сразу оговорюсь, что бывает и "non-Joomla way" - то есть подходы, которые не предполагаются ядром CMS, но при этом и явно не запрещаются. Сейчас речь пойдёт о традиционном пути, который состоит из 2-х простых шагов.

Читать на Хабре

#joomla #php #разработка
👍3