2011-09-20 156 views
3

我已经搜索了一个答案,但大多数帖子似乎都在讨论表单中的标签。我在Drupal 7的内容块中设置了自定义字段。当我显示这些自定义字段的标题(标签)时,它会在标题之后添加冒号。有没有办法删除它们?如何从标签中删除冒号?

回答

13

您需要重写field.tpl.php才能做到这一点(冒号被硬编码到该模板文件中)。

在你的主题文件夹中的任何位置创建field.tpl.php,将代码从上面的链接复制到它,调整它(删除冒号等),然后清除缓存:一切都会好的!

+0

!我无法弄清楚哪个.tpl文件是用于我的生活。谢谢! –

5

重写field.tpl.php并在冒号周围添加一个span(带一个类),然后使用CSS隐藏冒号。这为您决定何时隐藏冒号提供了灵活性。对于设置为上面的标签,您可能希望隐藏冒号,并且对于设置为内联的标签,您可能需要保留冒号。

例如: 在您的Drupal安装文件夹中,查看modules/field/theme并将field.tpl.php文件复制到您的主题。 对于D7,编辑field.tpl.php并更改<?php print $label ?>:&nbsp;<?php print $label ?><span class="field-label-colon">:&nbsp;</span> 在主题CSS样式表添加.field-label-colon{display: none;}或只隐藏标签标签上方.field-label-above .field-label-colon{display: none;}

1

我只想我的盐粮添加到这个话题。我一直试图这样做,通常最终会为每个要删除列的字段创建一个自定义模板文件,这在我看来并不是一个好的解决方案,因为标签的存在依赖于设计; 在一个好的MVC结构中,这个特性应该由View(CSS)控制,而不是Model(PHP模板)

还有就是我所做的这个时候:

  1. 将文件复制到modules/field/theme/field.tpl.php你的主题。
  2. 添加一个跨度绕柱:

    <?php print $label ?><span class="label-suffix">:&nbsp;</span>

  3. 添加CSS指令来删除在需要你的设计将其删除列:这是它

    #sidebar-first .label-suffix { display: none; }