有没有办法只更改特定文章的模板?
请注意,它无需将文章链接到任何菜单即可工作。
最佳答案
如果您希望模板替代不依赖于菜单位置,则无法为菜单分配标准模板的标准joomla方法不起作用。您将需要动手并编写一些自定义代码。您将需要使用article_id作为模板切换的触发器。
我在工作中做了类似的事情,但是现在不记得是如何实现了。找到代码后,我将在此处发布我的代码。
编辑:找到代码:)
您需要编辑文件/includes/application.php,特别是getTemplate()方法。在此方法结束时,就在以下位置:
// Fallback template
if (!file_exists(JPATH_THEMES.DS.$template.DS.'index.php')) {
$template = 'rhuk_milkyway';
}
您可以添加条件以应用自定义模板,如下所示:
//CUSTOM TEMPLATE FOR THE ARTICLE 13
if (JRequest::getVar('id')=='13' && JRequest::getVar('option')=='com_content') {
$template = $custom_template_name;
}
这会将名称在$ custom_template_name中的自定义模板应用于ID = 13的文章。您也可以使用它将不同的模板应用于组件,就像我对simplecaddy所做的那样:
//TEMPLATE FOR SIMPLECADDY
if (JRequest::getVar('option')=='com_caddy'){
$template = 'shop';
}
关于Joomla:如何更改特定文章的模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3269879/