カスタムモジュールからtplファイルに変数を渡そうとしました。 私のカスタムモジュール(名前の例)Drupal 7 - hook_themeから変数を取得
1で私はhook_menu経由で引数を指定してルートを作成しました:
function example_menu() {
$items['example/fancybox-photos/%'] = array(
'page callback' => 'example_display_fancybox_photos',
'page arguments' => array(2),
'type' => MENU_CALLBACK,
'access arguments' => array('access content'),
);
return $items;
}
2.私は私のページのコールバック関数を作成しました:
function example_display_fancybox_photos($nid) {
$nodePhoto = node_load($nid);
$field_photo = field_get_items('node', $nodePhoto, 'field_photo');
$photo = [
"field_photo" => $field_photo[0]['uri'],
....
];
return theme('example_fancybox_photos', array('infosPhoto' => $photos));
}
3。私はhook_theme
function example_theme() {
$themes = array();
$themes['example_fancybox_photos'] = array(
'template' => 'templates/example-fancybox-photos',
'variables' => array('infosPhoto' => NULL),
);
return $themes;
}
4を作成しました。私は最終的に結果は、私はいくつか・研究をした
NULLですが、私はなぜ理解しない
<pre><?php print var_dump($infosPhoto); ?></pre>
(テーマフォルダ内)のテンプレートフォルダに「例-fancybox-photos.tpl.php」という名前のTPLを作成しました変数はまだNULLです。
ご協力いただきありがとうございます。