質問: 7; } function mytheme_preprocess_html(&$vars){ //$vars['myvalue'] should equal 7... } 私は他の方法でも試しました(preprocess html関数で値を設定してから、ページのpreprocess関数で取得しました)が、どちらも機能しませんでした。これは関連する質問を持ち出します。これらの前処理関数はどのような順序で処理されますか?ページの前処理機能がhtmlの前にあるように思えますが、それは正しいですか?
回答: 私はこれを行うことにより、「ノード」と「ページ」の同様のケースでこれを達成しました:function mymodule_preprocess_node(&$vars) { _mymodule_preprocess_vars($vars,'node'); } function mymodule_preprocess_page(&$vars) { _mymodule_preprocess_vars($vars,'page'); } function _mymodule_preprocess_vars(&$vars, $where) { // all vars common to both node and page set here switch($where) { case 'node': // node only vars set here; break; case 'page': // page only vars set here; break; } } そのため、代わりに「ページ」と「html」でも同様に機能すると思います。