是否可以仅在特定文章(而不是每个菜单项)中显示 Joomla 中的模块,但在标准模块位置显示?
例如,以某种方式在模板中获取当前文章 id 并在名称中插入带有相应 id 后缀的模块?
是否可以仅在特定文章(而不是每个菜单项)中显示 Joomla 中的模块,但在标准模块位置显示?
例如,以某种方式在模板中获取当前文章 id 并在名称中插入带有相应 id 后缀的模块?
我建议您不要在模板中对此类内容进行硬编码。我的问题是,你为什么不想使用菜单项?您可以为该文章创建一个隐藏的菜单项并使用它,然后将模块分配给该菜单项。如果您仍然想在不使用菜单项的情况下执行此操作,则可能的解决方法是使用“mod_php”(允许您使用 php 代码的某些模块)之类的东西并或多或少地执行以下操作:
在您的 php 模块中,输入以下代码:
$option = JRequest::getVar( 'option', '' );
$view = JRequest::getVar( 'view', '' );
$id = JRequest::getInt( 'id', 0 );
if ( $option == "com_content" && $view == "article" && $id == YOUR_ARTICLE_ID ) {
$module = JModuleHelper::getModule('your_module_type', 'module_title');
if ( ! empty( $module ) ) {
$attribs = array( 'style' => 'xhtml' );
echo JModuleHelper::renderModule( $module, $attribs );
}
}
如果代码片段没有正确显示,我很抱歉,但我希望你能阅读它。只有一件事,当您填写“your_module_type”部分时,不要包括名称的“mod_”部分。例如,如果要输出“mod_article_list”类型的模块,则应在“your_module_type”中写入“article_list”。
我希望它有帮助!