web-dev-qa-db-ja.com

モジュールに表示されない領域

私は、バックエンドの多くがサイト固有のカスタムモジュールによって処理されるサイトで作業しています。

サイドバー領域があり、

Module-thing.php内に<?php print render($page['sidebar']); ?>を呼び出して領域を出力しますが、ブロック管理内のコンテンツで領域が設定されているにもかかわらず、何も表示されません。これがモジュール内から機能すると予想されるかどうか疑問に思っています..それを示すために何かできることはありますか?

私はこれを見つけました(右上)が、drupal 7では機能しないようです http://www.chrischen.me/content/drupal-how-access- region-blocks-themes-or-modules ..

1
Damon

ページ領域を印刷するコードは、カスタムモジュール内のファイルではなく、テーマのpage.tpl.phpファイル内にある必要があります。

コードを別のファイル(sidebar.php)に配置する場合は、次のように、それがpage.tpl.phpに含まれていることを確認する必要があります。

include './sidebar.php'; // file is in the same folder as page.tpl.php

または

module_load_include('php', 'MYMODULE', 'sidebar'); // file is in a module folder

それが役に立てば幸い

1
James