Модуль вывода материалов с другого сайта на Joomla (не граббер)

11 мес. 4 дн. назад #9551 от naleg
Добрый день! Возникла необходимость отображать материалы из определённой категории одного сайта на других сайтах.
Подумал, может возможно подружить стандартный модуль вывода новостей с внешней БД?
Базы находятся на одном сервере, версии Joomla одинаковые (4.2.9).
Пока только клонировал модуль mod_articles_news с новым именем mod_articles_filials. Предполагаю, что в хелпере при формировании $model нужно как-то указать подключение к другой базе.
Буду признателен, если кто-то подскажет решение.

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

11 мес. 1 день назад #9553 от Wedal
naleg, в Joomla подключение к базе происходит через файл конфигурации configuration.php. Подключение же к сторонней базе не предусмотрено. Я бы в данной ситуации поступил так: определил бы запрос, который происходит для выборки модулем новостей из стандартной базы, а потом в модуле подключился бы к сторонней базе и выбрал из нее данные тем же запросом. Это плохое решение по многим критериям. Подробнее о подключении к внешней базе данных средствами Joomla можно прочитать здесь: docs.joomla.org/Connecting_to_an_external_database

Другой вариант - если вы используете Joomla 4, то там есть возможность стороннего подключения к сайту средствами REST API. Это будет более правильный и удобный подход. Информация по теме:
documenter.getpostman.com/view/9617873/Szzj9yJy
magazine.joomla.org/all-issues/august-2020/joomla-web-services-api-101-tokens,-testing-and-a-taste-test
docs.joomla.org/J4.x:Joomla_Core_APIs

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

11 мес. 1 день назад #9554 от naleg
Спасибо за ответ!
Я надеялся что есть простое решение, типа клонировать стандартный модуль и в нём переопределить класс DatabaseDriver...
Пока разбирался, тоже пришёл к первому варианту. Работает. Для моей потребности (взять значения 3-х кастомных полей и title для материалов из 1 категории) вполне достаточно. Но понимаю, что это костыли какие-то. Хочется хорошо сделать.
Про REST API как-то забыл. Обязательно почитаю, спасибо!

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.