WebTolkRu
99 subscribers
620 photos
72 videos
2 files
645 links
Joomla-разработчик. Контрибьютер ядра Joomla. https://web-tolk.ru. Разработка Joomla на заказ. Также пишу в @JoomlaFeed.
@sergeytolkachyov Хабр: https://habr.com/ru/users/sergeytolkachyov/posts/
Download Telegram
Переводы содержания номеров Joomla Community Magazine за март-май 2025
Переведены и опубликованы краткие содержания номеров официального журнала сообщества Joomla - Joomla Community Magazine - за март, апрель и май 2025 года.

👩‍💻 март
👩‍💻 апрель
👩‍💻 май

С переводом и текстами мне помогала (и заодно училась) моя старшая дочь - София, за что ей спасибо 🙂

#joomla
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Пробую Vue.js. Прикольная штука.
👍3🤔2❤1😁1
Создание каталога расширений на SW JProjects. Видео.
На Youtube-канале Code Along Joomla коллега из Joomla-чата обнаружил видео-инструкцию Building a platform for a developer to release their own software. Разработчикам предлагается построить собственный каталог расширений на Joomla. В качестве основы используется компонент SW JProjects - наше отечественное детище. Первый его автор - Joomla-разработчик Игорь Бердичевский. А теперь (с версии 1.7.0) этот компонент на моём попечении.

@webtolkru

#joomla #dev #webdev #community
👍6❤1
Forwarded from Joomla Feed (Sergey Tolkachyov)
Вышел плагин AllVideos v.7.0 от JoomlaWorks.
Этот контент-плагин - одно из старейших расширений для Joomla. Его задача - преобразовывать шорт-коды вида {YOUTUBE}...{/YOUTUBE}, {MP3}parth/to/file.mp3{/MP3} и подобные во встроенные видео или аудио.
👩‍💻 v.7.0.0. Что нового?
- Добавлена поддержка Youtube Shorts. Просто скопируйте полный url видео и вставьте его внутри тегов {YOUTUBE}...{/YOUTUBE}.
- Поддержка Joomla 5.x без плагина обратной совместимости. PHP 5, PHP 7, PHP 8.
- Индексация умным поиском в CLI. В Joomla 5 плагин перестал вызывать ошибку при индексации контента умным поиском через CLI,

Заметьте, что этот один и тот же пакет для всех версий Joomla, начиная с 1.5.x и заканчивая 5.x. Технически "под капотом" код плагина по сути не менялся, а для поддержки следующих версий Joomla авторы вставляют "заплатки". Плагин всё ещё использует старую архитектуру файлов и классов Joomla, что, к сожалению, заставляет прибавлять к его описанию слова "пока ещё" - "пока ещё работает".

Страница расширения
GitHub расширения
Joomla Extensions Directory

👩‍💻 За ссылку спасибо самому внимательному участнику нашего сообщества - Ринату Кажетову (@rkazhet).

@joomlafeed

#joomla #расширения
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤1
Рылся в почте и нашёл, что в закладки добавил аж в 2021-м ссылку на СберСРМ. Никто не пользовался ею? Как оно? Что за зверь?
🤣1
Forwarded from Joomla Feed (Sergey Tolkachyov)
Плагин WT Contact anywhere with fields v.1.1.0 для Joomla.
Вставляйте контакты Joomla везде, где работают плагины контента. Используйте шорт-код {wt_contact_wf contact_id=XXXX tmpl=XXXX}. Создавайте собственные макеты вывода в папке tmpl плагина. Также показывает блок информации об авторе в материалах Joomla.

👩‍💻 v.1.1.0. Что нового?
- Разработчикам. Для разработчиков добавлена возможность помещать данные контакта, ассоциированным с автором материала, в свойство wtcontactwf.
- Joomla 6. Пакет плагинов успешно протестирован на Joomla 6-alpha2.

Страница расширения
GitHub расширения
Joomla Extensions Directory

@joomlafeed

#joomla #расширения
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Продолжаю делать библиотеку для двухсторонней интеграции AmoCRM и Joomla. Сделано очень много всего, описывать в документации придётся долго.
Краткий список:
- Глобальный рефакторинг. Почти всё переписано с нуля
- Новые методы.
- поддержка новых сущностей AmoCRM
- внедрение триггера onAmocrmIncomingWebhook для плагинов на входящие вебхуки
- WebhookEvent класс с методами на получение данных из вебхуков
- двухсторонняя синхронизация пользователей Joomla и контактов AmoCRM
- если нет email у пользователя - создаём временный контакт
- новые поля с данными AmoCRM для Joomla Form
- поля Joomla Form используют Joomla layouts, что даёт возможность переопределять макеты или управлять ими программно

🙏 Нужна помощь тестеров.

➡️ Новая версия библиотеки доступна в dev-ветке репозитория на GitHub.
⚠️ Это НЕ стабильный релиз. Не рекомендую использовать на боевых сайтах.

#joomla #php #development #разработка #amocrm
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3
Forwarded from Joomla Feed (Sergey Tolkachyov)
Call for authors. Joomla.

Вы любите Joomla и умеете её готовить? Вам попадаются Joomla-сайты, на которые без слёз смотреть не возможно и вы знаете как это можно исправить? Вы - Joomla-разработчик и можете создать шаблон, плагин, модуль, компонент гравицапы? Можете настроить любимую CMS как никто другой?

👩‍💻 Поделись своим опытом с сообществом!

✔️ Что может быть интересно:
- обзоры и подборки расширений для Joomla
- чек-листы: что делать с Joomla сразу после установки? Joomla и СЕО, Joomla и интеграции, Joomla и e-commerce
- ты разработчик? Напиши небольшой анонс о своём мега-плагине и о нём узнает самая целевая аудитория.
- напиши статью о том как работает Joomla под капотом. А мы ей поделимся со всеми в канале, чате, сайте сообщества и форуме.
- есть крутой кейс с большими цифрами? Расскажи всем о нём. Это не долго, а всем интересно. По крутым кейсам могут прийти заказчики с похожими проектами.

👩‍💻 Что ты получишь взамен?
Прежде всего благодарность сообщества. Да, все улыбнулись 🙂 Но эта благодарность может выражаться по-разному.
- Благодаря твоему контенту и расширениям твоё имя станет именем Joomla-эксперта. А хорошие заказчики любят экспертов.
- Благодаря твоему контенту больше веб-разработчиков научатся делать как правильно.
- Благодаря твоему контенту будет больше новых Joomla-разработчиков
- Благодаря твоему контенту ты будешь развиваться сам, расти как профессионал и развивать новичков. Чтобы научиться чему-то хорошо - начни это преподавать )) А новички могут стать твоими помощниками и будущими сотрудниками. Опытным специалистам нередко приходится отказываться от проектов из-за занятости. Ты сам об этом знаешь )
- Благодаря твоему контенту ты можешь выйти на международную Joomla-аудиторию.

Joomla представлена в Telegram, в Mattermost, на Хабре, VC и других площадках.

P.S. А если ты ещё и любишь волонтёрить, то также присоединяйся. Для жизни сообщества нужно порой делать много всяких полезных мелочей. Вместе это будет сделать легче.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤2
Forwarded from Joomla Feed (Sergey Tolkachyov)
👩‍💻 Загадочный параметр $live_site в configuration.php Joomla. Зачем он нужен?
Давным-давно, когда Joomla ещё была маленькой, в неё внедрили параметр $live_site. В ней хранился домен текущего сайта на случай, если Joomla не могла его определить из-за неверной настройки сервера. Нужно это было для разных SEO-компонентов, для использования редиректов и т.д.

Со временем для работы собственно сайта этот параметр перестал быть нужным. Уже в начале 2010-х стали встречаться рекомендации оставлять этот параметр пустым, дабы оный не привёл к лишним проблемам и путанице. Тем более, в web-админке нет места, где его можно указать или посмотреть его значение. Только в configuration.php, а туда смотрят не часто.

Однако, параметр всё же остался в ядре Joomla. Зачем он нужен? А нужен он в 2-х случаях:
- для работы класса Joomla\CMS\Uri\Uri, который часто используется в коде Joomla для работы методов Uri::root() и Uri::base(), а значит может влиять и на работу в том числе ajax-скриптов.
- для работы Joomla в CLI - командной строке сервера. В случае если вы используете в вашем CLI-плагине методы опять-таки класса Uri, то CLI ничего не знает о текущем домене, так как запускается вне web-сервера.

Поэтому домен нужно указывать принудительно.
Либо с помощью параметра командной строки --live-site, например, —live-site=https://site.ru/. Со слешем на конце, иначе в CLI адрес сайта станет https://site.rujoomla.php.
Либо в параметре $live_site в файле configuration.php, так как CliApplication берёт настройку оттуда, если параметр команды не указан или пуст.
⚠️ Иначе в качестве хоста и url класса Uri будет установлено https://joomla.invalid/set/by/console/application. В самом же коде команды получить параметр $live_site можно из объекта приложения
protected function doExecute(InputInterface $input, OutputInterface $output): int
{
//...
$live_site = $this->getApplication()->get('live_site');
//...
}

и исходя из этого строить дальнейшую логику.

@joomlafeed

#joomla #разработка #php #cli
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
В процессе работа над импортом пользователей из AmoCRM в Joomla. А для этого нужно иметь возможность фильтровать их по тегам. Сегодняшние пляски (из предыдущего поста) вокруг CLI в Joomla можно считать успешными ))
🔥3
Forwarded from Joomla Feed (Sergey Tolkachyov)
Вышел JoomShopping 5.8.0 - компонент интернет-магазина для Joomla.
Список изменений:
- добавлена галочка "обязательный" для атрибутов
- атрибуты, значения, свободные атрибуты, характеристики и их значения могут быть опубликованы / не опубликованы
- добавлены новые триггеры для плагинов
- обновление немецкой локализации
- сортировка логов для администраторов в режиме разработчика
- выбор видео, файлов и демо-файлов товара из папки на сервере
- исправления роутера (построение ссылок JoomShopping)
- редактирование заказа: автоматический расчет налогов
- для разработчиков аддонов: новый метод addMultiLangFieldTable
- правки тёмной темы
и другие изменения.

Обзор некоторых из них можно посмотреть в видео на YouTube.

@joomlafeed

#расширения #JoomShopping
👍4
На память.

#отзывы
👍4
👩‍💻 Как сделать красивый футер сайта в Joomla?
Удивительно, но такая простая задача до сих пор встречает множество самых разных реализаций. Поэтому скопирую в отдельный пост фрагмент статьи "Joomla 4 – шаблон Cassiopeia – советы и хитрости". Ведь когда есть стандарты для простых вещей - с этим как-то проще жить...

Итак:
1️⃣ Идём в Контент - Модули сайта (или в Система - Управление - Модули сайта).
2️⃣ Создаём новый модуль типа "Копирайты", указываем заголовок модуля
3️⃣ Указываем позицию Footer (для шаблона Cassiopeia или аналогичную в вашем),
4️⃣ Назначаем модуль всем пунктам меню и сохраняем.

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

Модуль на самом деле отображает 2 языковые константы, которые можно переопределить.

Константа MOD_FOOTER_LINE1 отображает строку "Copyright © %date% %sitename%. All Rights Reserved." (для английского языка).

Константа MOD_FOOTER_LINE2 отображает строку "<a href="https://www.joomla.org">Joomla!</a> is Free Software released under the <a href="https://www.gnu.org/licenses/gpl-2.0.html">GNU General Public License.</a>"

✔️ Для изменения этих строк выполните следующие шаги:

1️⃣ Идём в Система - Управление - Переопределение констант
2️⃣ Выбираем язык сайта (фронтенда), для которого будет сделано переопределение (для разных языков можно сделать разные)
3️⃣ Создаём новое переопределение, указываем константу и её новое значение

Для MOD_FOOTER_LINE1 можно указать "© %date% %sitename% | <a style="text-decoration: none;" href="/privacy">Политика обработки персональных данных</a>". Плейсхолдеры "%date%" и "%sitename%" автоматически заменяются на текущий год и название сайта.

Делаем то же самое для MOD_FOOTER_LINE2. СЕО-специалисты трепетно относятся к созданию ссылочного, каждая исходящая ссылка на вес золота, поэтому большинство из них порекомендуют убрать текст о том, что сайт сделан на Joomla и ссылку на joomla.org. Поэтому для MOD_FOOTER_LINE2 при переопределении языковой константы в качестве значение можно указать пробел. В этом случае не будет лишней исходящей ссылки.

Если у Вас сайт на нескольких языках, то проделываем то же самое для каждого языка сайта.

@webtolkru

#joomla #seo
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7
Forwarded from Joomla Feed (Sergey Tolkachyov)
Media is too big
VIEW IN TELEGRAM
Модуль Яндекс.Карт для Joomla WT Yandex map items v.2.0.4.
Модуль выводит метки из различных компонентов на Яндекс.Карты. На данный момент выводятся только материалы Joomla. Используется API 3.0 Яндекс.Карт. Поддерживается Joomla 4, Joomla 5 и старше. PHP 8+.

v.2.0.4. Что нового?
Исправление ошибок. Исправлена обработка полей Joomla для указания макетов маркеров и всплывающих окон, из-за которой не работали множественные поля типа select, radio и т.д.

Скачать модуль
GitHub модуля
Joomla Extensions Directory

#joomla #яндекс #расширения
❤3
Модуль WT Yandex map items попал в видео-обзор известного Joomla-блогера Фёдора Васильева, за что ему большое спасибо!

Читать обзор на сайте Фёдора Васильева.

Youtube
Дзен
RuTube
Boosty

#joomla #яндекс #яндекскарты
👍5
WT JSwiper - SWiper.js для Joomla-разработчиков v.11.2.9
Этот плагин для разработчиков Joomla. Плагин регистрирует Swiper.js пакет в Joomla Web Assets Manager. Затем вы можете использовать его в своих расширениях c помощью $wa->useScript('swiper-bundle')->useStyle('swiper-bundle').
Список изменений
- Bug Fixes. core: clear blank slides within loopCreate() (#8033) (377d53c)
core: escape brackets when transforming classes to selector (#8014) (0c53ee8)
core: slideTo function does not work when grid.rows > 1 (#8030) (1fde9d3)
core: using loop and slideToClickedSlide / slideToLoop with centeredSlides (b6692e2), closes #8031
element: don't set subprops on boolean values (090caa1), closes #8003
keyboard: detect contenteditable element in keyboard module (#8006) (fcd434a)
vue: add missing event (839cafb), closes #8002
Подробнее
👍2
WT JSwiper - SWiper.js для Joomla-разработчиков v.11.2.10
Этот плагин для разработчиков Joomla. Плагин регистрирует Swiper.js пакет в Joomla Web Assets Manager. Затем вы можете использовать его в своих расширениях c помощью $wa->useScript('swiper-bundle')->useStyle('swiper-bundle').
Список изменений
- Bug Fixes. core: fix clickedIndex with grid (863d8bd)
Подробнее
Forwarded from Joomla Feed (Sergey Tolkachyov)
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 JoomLab Favorite List: добавление материалов Joomla в избранное.
Расширение позволит пользователям Вашего сайта добавлять материалы в список избранных. То есть каждый пользователь сможет отложить материал в этот список, что бы в дальнейшей иметь быстрый доступ к нему. В целом, функционал похож на Добавить к сравнению или Список желаний в интернет-магазинах, только вместо товаров - материалы Joomla.

После установки и настройки, каждому материалу плагин добавит кнопку Добавить в избранное, а модуль выведет выбранные материалы.

Минимальная версия Joomla - Joomla 5.
Расширение бесплатное.
Разработчик - участник нашего сообщества Александр Новиков (@pro_portal).

Страница расширения

@joomlafeed

#joomla #расширения
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Blank page - компонент пустой страницы v.2.0.1
Всё, что делает этот компонент — выводит на сайте пустую страницу, привязанную к пункту меню, который не создаёт нагрузки ни для базы данных, ни на рендер страницы.
Список изменений
- Исправление ошибок. Исправлены ошибки в панели администратора Joomla 5+. Чистка кода.
- Joomla 6.. Компонент успешно протестирован на Joomla 6-alpha2.
Подробнее
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Продолжаю переводить по чуть-чуть документацию Swiper.js на русский язык.

Ну и куда ж без Joomla тут ))

https://web-tolk.ru/dev/joomla-plugins/wt-jswiper/documentation/swiper-js-modules

@webtolkru

#joomla
👍3