显示/隐藏模块标题不起作用


10

我正在尝试隐藏模块的标题。

我已经更改了管理员设置,但标题仍显示在前端。在数据库中,该showtitle字段设置为0


1
您如何调用模块?进入索引文件的方式是:<jdoc:include type =“ modules” name =“ left” style =“ xhtml” />?还是在任何地方都使用No Number等模块?
Faye

那是什么模块?来自核心模块或第三方模块的东西?它可能只是编码错误。
Brian Peat 2014年

我以前有过 正如@toni_marie指出的那样,它设置了多个位置。有全局选项可以被各个模块设置等覆盖...
tim.baker 2014年

模块为您提供标题选项的唯一位置是在单个模块中,没有全局模块标题切换,并且您的文章/菜单项切换不适用于您的模块。
Faye 2014年

希望您确定要编辑所需的模块,对吗?
FFrewin

Answers:


6

检查一下:

joomlaroot / templates / yourtemplate / html / modules.php

并搜索如下内容:

if($module->showtitle){echo $module->title;}

只有在echo $module->title;没有if($module->showtitle){}案件的情况下才有可能是灵魂。


2

我在某些模块和某些模板中的某些位置上经历了这一点。几乎可以肯定是:a)模块忽略了“ showtitle”参数,或对其进行了不正确的检查,或者b)模板/模板框架没有通过标题。例如,在YooTheme(一个流行的主题提供程序,具有自己的模块渲染链)使用的Warp框架中,“徽标”位置不会渲染模块标题(因为他们猜测您不希望使用模块标题)显示在徽标图片上方)。

如果您使用模板和模块更新问题,则调查起来会更容易。


2

这将取决于它是哪个模块以及如何呈现。我在Joomla 3.3中遇到了搜索模块问题。我将标题隐藏在后端,但仍显示在前端。我必须做一个“输出覆盖”才能隐藏标题。我将文件复制modules/mod_search/tmpl到模板中(例如templates/mytemplate/html/mod_search),然后添加代码以尊重的价值showtitle

if($module->showtitle=="0")
  $output = ""; 
else
  $output = '<label for="mod-search-searchword" class="element-invisible">' . $label . '</label> ';

为什么在核心版本中不是这样,但我想,既然它是开源的,我可以自己更改它...




1

每个模块都允许其标题作为模块管理器中的选项显示或隐藏。
注意:这是配置它的唯一位置。

该值存储在“ #__modules”的“ showtitle”列中。
希望此设置受到呈现它的模块和模板的尊重。

Joomla核心根据其样式渲染模块。根据样式的渲染可以在(administrator /)templates / $ template $ / html / modules.php中找到。
每种样式都有其自己的功能,前缀为modChrome_。并非所有样式都有标题代码。

适用哪种样式取决于模板中的JDOC和模块的可选设置。

还注意到一些不一致的编码:if ((bool) $module->showtitle)
vs if ($module->showtitle)
与vs if ($module->showtitle != 0)
可能会导致意外结果

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.