老葛的Drupal培训班 Think in Drupal
这里,我们通过对数据库进行查询来获得待定的评论,将评论的标题显示为链接,同时为每一个评论追加一个编辑链接,如图9-6所示。
注意,在前面的代码中,我们是如何使用方法drupal_get_destination()的。这个方法将记住在你提交表单以前你所在的页面,所以当你更新一个评论以后(或者发布,或者删除),它将自动重定向到你原来所在的页面。
你还使用下面的代码设置了区块标题:
$block['subject'] = t('Pending comments');
图9-6 “待定评论”列表区块在它启用后的情况。它展示了两个待定评论。
现在“待定评论”区块已经完成,让我们在approval_block()函数中定义另一个区块----它列出了所有未发布的节点,并提供了一个指向它们编辑页面的链接。
function approval_block($op = 'list', $delta = 0, $edit = array()) {
switch ($op) {
case 'list':
$blocks[0]['info'] = t('Pending comments');
$blocks[0]['cache'] = BLOCK_NO_CACHE;
$blocks[1]['info'] = t('Unpublished nodes');
$blocks[1]['cache'] = BLOCK_NO_CACHE;
return $blocks;
}
}
注意这里是如何为每一个区块指定一个键的($blocks[0], $blocks[1], . . . $blocks[n])。区块模块将最终使用这些键作为$delta参数。这里我们将“待定评论”区块的$delta ID定义为0,“未发布节点”区块的$delta ID定义为1。在这里也可以使用“待定”和“未发布”作为键。根据程序员的判断来决定使用哪种键,而键不一定是数字形式,也可以是字符串。