【问题标题】:Joomla plugin to override table prefixJoomla 插件覆盖表前缀
【发布时间】:2018-04-06 20:18:23
【问题描述】:

概述: 我有一个 Joomla 网站,在同一个数据库中拥有数据库表的各种副本,但表前缀不同。

根据访问站点的用户,我需要更改使用的 joomla 表前缀以显示相关表。

这必须是网站范围的。

问题: 通过核心代码破解,我可以根据需要更改前缀,但更喜欢将其作为插件。

通过插件,我可以使用 $db->getPrefix() 获取前缀,并且可以使用 $db = JDatabaseDriver::getInstance($option) 设置连接的即时实例。但这不是站点范围的,并且被标准 $db = JFactory::getDbo() 覆盖。

所以我需要一个系统插件,它可以在运行时替换表前缀的每个实例。

有什么想法吗?

【问题讨论】:

  • 我认为这是一个非常酷的想法——但你想回答它的人可能在 joomla.stackexchange.com Joomla 网站上。

标签: php mysql joomla prefix


【解决方案1】:

抱歉,如果您安装了一个新组件或模块,您在同步所有数据库上的这些更改时会遇到很多问题。我认为对您来说最好的方法是将每个用户重定向到他的真实站点(许多 joomla 文件和许多 db)。 否则,您可以创建一个个人组件并读取该用户的表前缀并仅显示您想要的日期,这样只需复制您需要的表而不是所有 joomla 结构。

【讨论】:

    猜你喜欢
    • 2015-08-27
    • 2015-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-21
    • 2015-11-07
    相关资源
    最近更新 更多