joomla com_content 覆盖

问题描述 投票:0回答:2

我需要在 com_content/views/article/view.html.php 中进行一些更改

该文件包含一个类:

class ContentViewArticle extends JViewLegacy{

}

我如何覆盖此类,因为在某些类别上我需要以不同于现在的方式设置元描述?

我将核心源文件复制到: 模板/my_template_name/code/com_content/views/article/view.html.php

我做了一些更改,但不起作用。

我认为它没有使用新文件。 我正在使用 Joomla 2.5.7

joomla overriding
2个回答
4
投票

您不需要覆盖view.html,只需覆盖com_content/views/article/tmpl/default.php。只需在

中复制一份即可

/templates/your_template/html/com_content/article/default.php

并编辑副本。然后你就可以使用

$document = JFactory::getDocument();
$document->setMetaData(...

更改元字段。最终它们将由模板呈现,因此您不需要自己输出元数据。

您可以在组件或模板中的任何位置执行上述操作,但不能在模块中执行。


1
投票

您无法对

view.html.php
文件进行模板覆盖 - 如果您要执行此操作,则必须编辑核心文件。不要忘记您可以在文章参数中设置文章的元描述(位于编辑/新文章视图的手风琴内)。

在进行这些更改之前,最后将您的 Joomla 版本更新到 2.5.9 - 因为您应该更新,但随着更新您将失去对

view.html.php
的更改

© www.soinside.com 2019 - 2024. All rights reserved.