Обзор:
У меня есть один веб-сайт Joomla, в котором разные копии таблиц базы данных находятся в одной базе данных, но с разными префиксами таблиц.
В зависимости от того, какой пользователь обращается к сайту, мне нужно изменить, какой префикс таблицы Joomla используется для отображения соответствующих таблиц.
Это должно быть по всему сайту.
Проблема:
с взломом кода ядра я могу изменить префикс по мере необходимости, но предпочел бы это как плагин.
С помощью плагина я могу получить префикс, используя $ db-> getPrefix (), и установить непосредственный экземпляр соединения, используя $ db = JDatabaseDriver :: getInstance ($ option). Но это не для всего сайта и перезаписывается стандартным $ db = JFactory :: getDbo ().
Поэтому мне нужен системный плагин, который будет перераспределять каждый экземпляр префикса таблицы при запуске.
Есть идеи?
Извините, но если вы устанавливаете новый компонент или модуль, у вас много проблем с синхронизацией этих изменений на всех БД. Я думаю, что для вас лучше всего перенаправить каждого пользователя на его реальный сайт (много файлов joomla со многими базами данных).
В противном случае вы можете создать личный компонент и прочитать префикс таблицы этого пользователя и отобразить только желаемую дату, таким образом просто продублируйте нужные вам таблицы, а не всю структуру joomla.
Других решений пока нет …