【问题标题】:How to remove H2 tag from some blocks如何从某些块中删除 H2 标签
【发布时间】:2013-03-07 15:27:05
【问题描述】:

我想从搜索和其他一些块中删除 H2 标记(而不是通过 block.tpl.php 从所有这些块中删除)。我使用 Zen 的子主题。希望有人可以帮助我。

【问题讨论】:

标签: drupal drupal-theming drupal-zen


【解决方案1】:

进入区块配置页面 -> 编辑区块 -> 输入 <none> 作为标题。
这是 CMS 的方式,您应该这样做。

【讨论】:

  • 谢谢梅林!它工作正常,但我不知道为什么它只适用于搜索表单块!?知道如何解决这个问题吗?
  • 问题解决了。我已经从搜索模块中删除了 h2 标签。
【解决方案2】:

这是一个模糊的问题,所以答案同样模糊......

function MYTHEME_preprocess_block(&$vars) {
  if ($vars['block']->info == 'foo') {
    $vars['theme_hook_suggestions'][] = 'block__no_title';
  }
}

然后将 block--no-title.tpl.php 文件添加到您的主题,从 block.tpl.php 复制标记,并删除 <h2>。清除 Drupal 的主题注册表缓存,您就完成了。

【讨论】:

  • 好的。我已经创建了没有

    的文件块--no-title.tpl.php 但我不知道在哪里放置代码 - 我在我的子主题的 template.php 中尝试过(也在 Zen 主题中)但是我的主题名称出现错误“注意:未定义的属性:MYTHEME_preprocess_block() 中的 stdClass::$info”。您能否详细说明我必须做什么,因为我在 Drupal 和 php 方面没有那么丰富的经验。

  • 对不起,如果你不懂 PHP 或 Drupal,我帮不了你
【解决方案3】:

Clive 已经回答了 IMO 正确的问题 - 但正如您所说,您对 PHP 不是很有经验,让我提出一些不涉及编码的建议 - 但请记住:学习 Drupal 和 PHP 很容易如果您有足够的时间阅读文档和测试,这会很有趣。

从“删除 h2”,我假设您的意思是删除类 title 的 h2 标记。 在块的配置页面中,输入 <none> 作为块的标题 - 您的块将不包含标题(及其 h2 标记)。

这是每块设置。

【讨论】:

    【解决方案4】:

    假设您出于 SEO 原因想要删除 H2 标签,我想建议一个利用“搜索表单”字符串的技巧。从您的语言文件中查找“搜索表单”标签(默认英文)并将其替换为“您的 SEO 文本”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-01
      • 2011-06-20
      • 1970-01-01
      • 2022-11-03
      • 1970-01-01
      • 2016-11-23
      • 1970-01-01
      • 2021-05-28
      相关资源
      最近更新 更多