Drupal文档教程翻译 - 覆写输出 - Drupal核心组件标识

logo-drupal-documentation本站原创编译,转载请给面子,尊重劳动果实,欢迎交流指正。

各位早,今天凉快了一些,为撒还不到2012来。继续Drupal文档中文翻译吧,日子还长着。话说上周最后一篇里面我们了解了怎样自定义搜索区块的HTML输出,今天在讲解方面的内容不多,主要是将系统核心的一些组件标识陈列出来作为自定义覆写参考之用。

分为4部分的样子,核心区块的id列表,导航菜单,分类,mission statement和高亮区域。依次看下。

核心区块id

Drupal核心会生成N多区块(block)每一个都拥有独立的id;Drupal 7中的区块id相比于Drupal 6来说发生了不少的变化,我们列在这里方便参考对比:

  • Active forum topics(论坛活跃主题)
    Drupal 6: block-forum-0
    Drupal 7: block-forum-active
  • Author information(作者信息)
    Drupal 6: block-profile-0
    Drupal 7: block-profile-author-information
  • Book navigation(book导航)
    Drupal 6: block-book-0
    Drupal 7: block-book-navigation
  • Language switcher(语言切换)
    Drupal 6: block-locale-0
    Drupal 7: block-locale-language-switcher
  • Most recent poll(最近头漂)
    Drupal 6: block-poll-0
    Drupal 7: block-poll-recent
  • Navigation(导航)
    Drupal 6: block-user-1
    Drupal 7: block-system-navigation
  • New forum topics(论坛新主题)
    Drupal 6: block-forum-1
    Drupal 7: block-forum-new
  • Popular content(热门内容)
    Drupal 6: block-statistics-0
    Drupal 7: block-statistics-popular
  • Powered by Drupal
    Drupal 6: block-system-0
    Drupal 7: block-system-powered-by
  • Recent blog posts(近期博客内容)
    Drupal 6: block-blog-0
    Drupal 7: block-blog-recent
  • Recent comments(近期评论)
    Drupal 6: block-comment-0
    Drupal 7: block-comment-recent
  • Search form(搜索表单)
    Drupal 6: block-search-0
    Drupal 7: block-search-form
  • Syndicate
    Drupal 6: block-node-0
    Drupal 7: block-node-syndicate
  • User login(用户登录)
    Drupal 6: block-user-0
    Drupal 7: block-user-login
  • Who's new(近期注册用户)
    Drupal 6: block-user-2
    Drupal 7: block-user-new
  • Who's online(在线用户)
    Drupal 6: block-user-3
    Drupal 7: block-user-online

导航菜单

Drupal 6中的主要菜单(Primary)和次级菜单(Secondary)到了Drupal 7中我擦勒闹不住的依次叫做“Main”和“Secondary”。

Drupal 6.x

<div id="menu">
<?php if (isset($secondary_links)) { ?><?php print theme('links', $secondary_links, array('class' => 'links', 'id' => 'subnavlist')); ?><?php } ?>
<?php if (isset($primary_links)) { ?><?php print theme('links', $primary_links, array('class' => 'links', 'id' => 'navlist')) ?><?php } ?>
</div>

Drupal 7.x

<div id="menu">
<?php if (isset($secondary_menu)) { ?><?php print theme('links', $secondary_menu, array('class' => 'links', 'id' => 'subnavlist')); ?><?php } ?>
<?php if (isset($main_menu)) { ?><?php print theme('links', $main_menu, array('class' => 'links', 'id' => 'navlist')) ?><?php } ?>
</div>

分类

在Drupal 6中,我们可以在node.tpl.php模板文件中使用$taxonomy变量来获取当前node的分类条目。Drupal 7中就不好使了,所有的相关链接都直接封装进了$node对象;要获取分类条目的话可以使用形式为$node->content['links']['terms']['#value']的变量。

从前在node.tpl.php文件中使用的$terms变量依然建在,多数时候用它就好。

Drupal 6.x

<?php if ($taxonomy): ?>
<div class="terms"><?php print $terms ?></div>
<?php endif;?>

Drupal 7.x

<?php if ($terms): ?>
<div class="terms"><?php print $terms ?></div>
<?php endif;?>

mission statement和高亮区域

在Drupal 6中,我们可以在页面模板中使用一个特殊的变量$mission (在后台中可以设置是否显示及显示的内容,Your site's mission or focus statement,often prominently displayed on the front page.)。

Drupal 7中去掉了这个东东,取而代之的是一个置放在区域中的更普通的可自定义区块;这个区域叫做“高亮”,默认位置于Drupal 6中的相同,但不再仅限于在首页显示,而是和其他区块相同,可以自行设置显示规则。

如果我们使用的主题原生支持“高亮”区域,那么我们可以在.info文件中进行声明,然后进行相关自定义覆写。

Drupal 7

regions[content] = Content
regions[left] = Left sidebar
regions[help] = Help
regions[highlight] = Highlight

译者:Viiiix7210

如需转载,请注明官方英文文 档及本人译文的出处,谢谢。查看英文原文: Identifying Core Components


收藏与分享