flexiblock模块

Druapl 4.7 使用手记 (3):灵活摆放block

Drupal 4.7 提供了更灵活的block摆放设置,除了原来的左右边栏,还可以把block摆放在页首与页尾。新的block摆放设置有一个优点与一个缺点。优点是事实上它可以把block摆放在页面(page.tpl.php)上的任何位置;确定是摆放仅限于于页面(page.tpl.php)而无法灵活的放置在node.tpl.php上,举个例子,譬如你想在每篇blog的下面通过freetagging的关联添加一个"相关blog文章"的block,利用Drupal的新的block系统,你只能把这个block摆放在评论的下面而通常所希望的评论的上面,free tags的下面,有些不方便。这里我就分别介绍一下Drupal 4.7的block的这两个优缺点,以及改进办法(以放置related nodes 为例)。

Drupal 4.7的block在设置中,除了左右侧边栏外,新添加了页首,页脚和内容三个位置的摆放,使得block的放置更为灵活。其实,block的摆放并不仅限于这三个地方,通过设置方便的PHPTemplate主题,我们可以方便的把block放在任意的地方。首先,针对left, right, content, header, 和footer这5个位置,他们对应的变量分别是 $sidebar_left, $sidebar_right, $content, $header, 和 $footer_message。也就是说在page.tpl.php中,你只要想在显示他们的地方是用 <?php print $变量名称; ?> 就可以了。譬如,你可以把 $sidebar_left 放在右边而不是左边(使用两个边栏都在右侧的外观主题)。除此以外,你还可以方便的定义自己的区域。

随心所欲的摆放区块(block): flexiblock.module

[img_assist|fid=3461|thumb=1|alt=Flexiblock模块示意图|caption=flexiblock模块的示意图]
Drupal让我们体会到了搭积木的乐趣,方便的模块结构使用户可以随心搭建。Drupal页面设置也很灵活,无论是三栏结构,还是两栏结构,简单的点击一下就能彻底搞定。虽然一切都是那么的灵活,但是还有一丁点儿死板--那就是区块只能显示在左右两栏,可能会对页面的设计带来不便。举个例子, 譬如我使用的“Related Nodes”区块, 可以通过tag来显示和目前文章相关联的文章,这个区块的摆放最好是在文章的下面,方便读者浏览,可是按照Drupal原来的设计, 作为区块,它只能放在左右的sidebar里,这样一来很不容易注意到这个区块。虽然我们可以通过更改模块将这个“related nodes”区块显示在文章的下部,但是这样为以后的升级带来了不少的麻烦,因为每升一次级,就要相应的更改一次模块,如果模块的结构发生了改变,还要一切重来。

Syndicate content