2012-12-07 41 views
8

我试图覆盖使用本page重写的Joomla核心组件文件

它说,我要创建一个文件夹名为给予的指令com_content /视图/条/ view.html.php中的Joomla文件“代码'在基本目录中并创建相同的目录结构。我试过了,但没有工作。有人可以确认其工作。

我应该在哪里创建代码文件夹?它是在joomla安装的根源吗?

PS-编辑正常工作时,对核心文件应用

+0

你试过做模板的方法呢? – Lodder

+1

模板方法也不起作用。我认为模板方法只能覆盖tmpl文件夹内的default.php文件。 – Ajith

+1

你使用的是什么版本的Joomla? – Elin

回答

6

如果您的班级与同名先加载,您可以覆盖(几乎)任何类在Joomla。为了确保这一点,你需要创建一个系统插件。

这里是根/组件/ com_content /视图/条为例/ view.html.php:

class plgSystemOverride extends JPlugin 
{ 
    public function onAfterRoute() 
    { 
     JLoader::register('ContentViewArticle', 'path/to/override.php', true); 
    } 
} 

警告:重写核心类可能会导致与其他扩展的问题,如果你是不是很小心。不过,对于意见,任何干扰其他扩展的可能性较小。

+1

Awesomesauce。很好的答案 – pal4life