Drupal6でregionsの追加

Drupal5では、template.phpに以下のように書いていたものが、6で変更になっている。

function my_new_regions() {
  return array(
  	  'left' => t('left sidebar'),
  	  'right' => t('right sidebar'),
  	  'content' => t('content'),
  	  'content2' => t('content2'),
  	  'header' => t('header'),
  	  'footer' => t('footer')
  	  );
	
}

Drupal6では、テーマのinfoファイルに書く必要がある。

regions[left] = Left sidebar
regions[right] = Right sidebar
regions[content] = Content
regions[header] = Header
regions[footer] = Footer

当然、追加分だけではなく、全部再定義する必要がある。

http://drupal.org/node/171205#regions

そしてこのinfoファイルの内容はキャッシュされているので、ただ変更してもすぐに「サイトの構築」->「ブロック」に反映されない。そのためこの変更を加えた後は、「サイトの環境設定」->「パフォーマンス」->「キャッシュデータのクリア」でキャッシュを消す必要がある。