Drupalが初めてで、drupalのドキュメントを参考にして、最初のカスタムモジュール( "configurator")を作成しようとしています)。
メニューフックを実装しました:
function configurator_menu()
{
$items = array();
$items['configurator'] = array(
'title' => 'Configurator',
'page callback' => 'configurator_init',
'access callback' => TRUE,
'type' => MENU_CALLBACK,
);
return $items;
}
function configurator_init()
{
return "<p> Hello World </p>";
}
「管理>サイト構築>モジュール」でモジュールが表示され、アクティブ化されます。キャッシュはクリアされましたが、「構成」モジュールのメニュー項目がどういうわけか表示されません。
どうして?
リンクを追加するメニューのmenu_name
キーを設定するのを忘れているか:
$items['configurator'] = array(
'title' => 'Configurator',
'page callback' => 'configurator_init',
'access callback' => TRUE,
'type' => MENU_CALLBACK,
'menu_name' => 'primary-links',
);
または、デフォルト(「ナビゲーション」)を使用したいが、間違ったタイプを使用しています。そのはず
$items['configurator'] = array(
'title' => 'Configurator',
'page callback' => 'configurator_init',
'access callback' => TRUE,
'type' => MENU_NORMAL_ITEM,
);
コールバックはパスを登録するだけなので、URLにアクセスしたときに正しい関数が呼び出されます。 メニューには表示されません。
鉱山を強調します。