【问题标题】:Drupal6: How to programmatically style a block?Drupal6:如何以编程方式设置块样式?
【发布时间】:2011-06-30 14:57:00
【问题描述】:

在 Drupal6 中,我基本上有一个块(分层菜单结构),在 HTML 中结果如下:

<div class="block block-menu_block" id="block-menu_block-1">
<div class="content">
    <div class="menu-block-1 menu-name-menu-navigation parent-mlid-0 menu-level-1">
    <ul class="menu">
        <li class="leaf first menu-mlid-248 active active-trail"><a class="active-trail active" title="" href="/">Start</a></li>
        <li class="expanded menu-mlid-249 active"><a class="active" title="" href="/">Aktuell</a>
            <ul class="menu">
                <li class="leaf first menu-mlid-259">
                    <a title="News und Presse" href="/news-und-presse">News and Press</a>
                </li>...

我想得到的其实要简单得多:

<div id="topmenu">
    <ul class="one">
    <li>some main entry
        <ul>
        <li>
            some sub entry ...

或者也许:

<div id="topmenu">
    <h2>some main entry</h2>
        <h3><a href="#">some sub entry</a></h3>
        <h3><a href="#">another sub entry</a></h3>
    <h2>another main entry</h2>

因此,保持结构不变,但能够在需要时使用更简单、甚至完全不同的标签。我想我从drupal docs 了解到,我(也许)正在看

<div class="block block-menu_block"
id="block-menu_block-1"

==>     module := menu_block
    delta  := 1 (?)

很遗憾,没有建议

  • 块-[模块]-[delta].tpl.php
  • block-[模块].tpl.php
  • block-[区域].tpl.php

放在 page.tpl.php 旁边(是的,我确实清除了缓存),有任何影响。即使里面只有一个大而闪亮的 HELLO WORLD... 运气不好...

我需要覆盖什么以及如何覆盖? (最好是某种递归函数?)

谢谢!

【问题讨论】:

  • 这是您在自定义模块中创建的块、现有核心菜单块还是来自贡献模块的块?

标签: drupal drupal-6 drupal-blocks drupal-templates drupal-navigation


【解决方案1】:

您可以通过在您自己的自定义主题中覆盖主题函数和模板来控制所有 html 输出。阅读文档以了解如何操作:http://drupal.org/node/341628

也就是说:如果这真的让您对 Drupal 感到困扰,您可能不想让自己头疼并选择不同的 CMS/框架。 Drupal 旨在为 95% 的用例生成具有足够 div 和类的通用 html。可以实现干净且最小化的 html,但可能需要很长时间。

【讨论】:

  • 谢谢。尤其是后半段非常真实。设置菜单样式需要大量的 CSS 技巧(例如,第一个样式顶级“ul li”,然后覆盖样式子“ul ul li”),特别是如果为了旧版浏览器而避免使用“>”:- )
【解决方案2】:

您可以安装 devel 和主题开发者模块。然后你激活主题开发者,在左下角你可以打开它。指向您的块后,您会获得很多信息,哪些模板被使用,或者是否是生成代码的函数,哪些函数用于命名覆盖。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-07
    • 2017-03-11
    • 2012-04-12
    • 2020-10-06
    • 2011-03-09
    • 2014-09-20
    • 2015-07-04
    相关资源
    最近更新 更多