系统插件安装后无法编辑文章

时间:2013-02-22 15:04:57

标签: plugins cpanel whm joomla3.0

我为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

我可能需要更改任何有关配置的指针。

问题:如何防止这种情况发生(不删除我的基本插件)。

1 个答案:

答案 0 :(得分:0)

如果您创建仅适用于前端的系统插件,则必须在当前页面为前端时检入插件。您可以使用此功能执行此操作:JFactory::getApplication()->isSite()JFactory::getApplication()->isAdmin()

示例用法(我假设您使用 onAfterRender 事件):

function onAfterRender() {
    // Exit if current page is from Administration panel
    if( JFactory::getApplication()->isAdmin()  ) return;

    /* your plugin main code goes here*/
}

它会阻止您的插件修改管理面板输出。如果你已经完成它并且它确实应该检查,那么你的问题的原因就不是插件了。