2011-09-09 7 views
0

私は起動したモジュールを持っていますが、無効ブロックリストには表示されません。
my_module.module
my_module.infoモジュールがブロック(6.x)に表示されない

my_module.info:

name = My Module 
description = My module description. 
core = 6.x 
package = My Modules 

my_module

モジュールは、私が持っているmy_moduleフォルダ内の "マイ・モジュール"

命名されます。モジュール

<?php 
function hook_block($op = 'list', $delta = 0, $edit = array()){ 
    switch ($op) { 
     case 'list': 
      $block = array(); 
      //List out all blocks you want to create here 
      $block[0]["info"] = t('Display info'); 
      break; 
     case 'view':  
      switch ($delta) { 
      case 0: 
        $block['subject'] = "ADMIN Header of the block"; 
        global $user; 
        if(in_array('Site admin', array_values($user->roles) || $user->uid == 1)){ 

        $block['content'] = "input form"; 
        $block['subject'] = "Header of the block"; 
       } 

      break; 
      } 
    }   
} 
?> 

答えて

1

フックコールで値を返すことはありません。表示するには配列を返す必要があります。また、フックブロックの実装を記述するときには、break;を使うこともありません。

break;を除去して、両方のケースの終わりにreturn $block;を追加してみてください。

例えば

case 'list': 
     $block = array(); 
     //List out all blocks you want to create here 
     $block[0]["info"] = t('Display info'); 
     return $block; 

case 'view':  
     switch ($delta) { 
     case 0: 
       $block['subject'] = "ADMIN Header of the block"; 
       global $user; 
       if(in_array('Site admin', array_values($user->roles) || $user->uid == 1)){ 

       $block['content'] = "input form"; 
       $block['subject'] = "Header of the block"; 
      } 

     return $block; 

私はあなたがそれを見てきた確信しているが、これは他の人http://api.drupal.org/api/drupal/developer--hooks--core.php/function/hook_block/6

+0

なぜあなたは休憩を使用していないに有益であるかもしれませんか? – kylex

+0

私が知る限りhook_blockには本当の必要はありません。私はいつも休憩を使います。スイッチブロックにロジックがある場合、この例ではスイッチの各部分を実行する必要があります。 申し訳ありませんが、それはほとんど意味がありません...それは私の仕事の終わりに近すぎます;-) – Chapabu

関連する問題