【发布时间】:2013-02-22 15:04:56
【问题描述】:
我为 Joomla 3.0 开发了一个前端系统插件,它替换了 HTML 格式对象的关键字。这在我的本地实验室环境中完美运行,但是当安装在托管站点 (WHM/cPanel) 上时,它会导致管理区域出现问题并阻止管理员编辑文章。
当管理员单击文章以编辑页面时,尝试加载然后似乎返回到同一页面。我只是将它开发为一个前端插件,所以我不应该影响管理区域。
问题还在于阻止管理员创建任何新内容(新闻、博客、内容、菜单项等)
由于这不会在我的实验室中发生,我只能假设问题出在我可能需要启用/禁用的某些服务器设置上。我拥有对 WHM、cPanel 和 Joomla 的完全管理权限,因此可以根据需要更改设置...
我观察到的事情:
文章网址更改自:
/administrator/index.php?option=com_content&view=article&layout=edit&id=7
到:
/administrator/index.php?option=com_content&view=article&layout=edit&id=7
当插件启用时。请注意,& 符号已更改为 amp;。这让我觉得这可能与在 MySQL 中将 UTF-8 字符编码设置为 utf8general_ci 有关。
任何关于我可能需要更改的配置的建议都会受到欢迎。
问题:如何防止这种情况发生(不删除我的基本插件)。
【问题讨论】:
-
您如何阻止它在管理员中运行?插件响应什么事件?被编码的 & 符号与 utf8 无关,这与 & 符号和所有被编码的特殊字符有关,以便它们验证。您可能需要显示一些代码以获得帮助。
-
@Elin,我在调用类之前添加了一个检查,以确保 IsAdmin() === false;这阻止了插件破坏 Joomla 框架,但奇怪的是这只发生在托管环境而不是本地。
-
这绝对很奇怪,我想不出为什么会发生这种情况,除非您的 php 版本略有不同?
标签: plugins cpanel whm joomla3.0