10

我正在尝试使用此页面中给出的说明覆盖 joomla 中的 com_content/views/article/view.html.php 文件

它说我必须在基本目录中创建一个名为“code”的文件夹并创建相同的目录结构。我试过了,但它不起作用。有人可以确认它是否工作。

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

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

4

3 回答 3

7

You can override (nearly) any class in Joomla, if your class with the same name is loaded first. To ensure that, you need to create a system plugin.

Here is an example for root/components/com_content/views/article/view.html.php:

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

CAVEAT: Overriding a core class can lead to problems with other extensions, if you're not very careful. For views, though, any interferrence with other extensions is less likely.

于 2013-03-28T15:37:24.120 回答
1

您不能在核心 Joomla! 中覆盖组件控制器、模型和视图!不使用 3rd 方插件。

您需要的插件可以在这里找到:http ://extensions.joomla.org/extensions/style-a-design/templating/15611

代码文件夹然后进入您的 Joomla 根目录,除非您覆盖后端视图,在这种情况下它进入 /administrator

希望这可以帮助 :)

于 2013-02-25T23:08:41.013 回答
0

您可以使用类覆盖插件http://extensions.joomla.org/extensions/tools/development-tools/23994

只需添加一些简单的人工阅读命令

于 2014-01-15T13:42:32.570 回答