Drupal 7 Drupal7:以编程方式更改块顺序

Drupal 7 Drupal7:以编程方式更改块顺序,drupal-7,block,Drupal 7,Block,当用户未登录时,我想更改区域中块的顺序。我试图改变块的重量,但什么也没发生。这就是我尝试的: function mymodule_block_info_alter(&$blocks, $theme, $code_blocks) { $blocks['views']['-exp-article-page_knowldg']['weight'] = '-16'; } 及 我不想创建一个新区域并将块移动到其中,它应该与一个区域一起工作 有没有关于如何更改块顺序的想法?如果我是对的,块列表

当用户未登录时,我想更改区域中块的顺序。我试图改变块的重量,但什么也没发生。这就是我尝试的:

function mymodule_block_info_alter(&$blocks, $theme, $code_blocks) {
  $blocks['views']['-exp-article-page_knowldg']['weight'] = '-16';
}

我不想创建一个新区域并将块移动到其中,它应该与一个区域一起工作


有没有关于如何更改块顺序的想法?

如果我是对的,块列表alter将进行静态更改


您可以使用面板、上下文或CSS等模块,这些模块都可以轻松完成任务。

显示代码将非常有用。
function mymodule_block_list_alter(&$blocks) {
  $blocks['131']->weight = -20;
  $blocks['185']->weight = -40;
}