2011-02-20 5 views
1


私は私が持っているフックブロックにDrupalのモジュール "MYMOD"
を持っている:drupalテーマ関数のリファレンスでパラメータを渡す方法は?

 
case 'view': 
    switch ($delta) { 
    //other cases 
    case 6: 
       $block['cache']=BLOCK_NO_CACHE; 
       $blcok['subject']=""; 
       $block['content'] = theme('rss_feeds',$blcok['subject']); 
       return $block; 
} 

とMyMod_themeで:

 
function MyMod_theme(){ 
return array(
'rss_feeds' => array(
      'arguments' =>array('Subject' =>NULL), 
     ), 
); 
} 

と私themes_rss_feedsは次のとおりです。今

 
function theme_rss_feeds(&$Subject){...} 

私はadmin/reports/eventでこのエラーが発生し続けています
パラメータ1は、参照、/var/www/staging/htdocs/includes/theme.incの656行で指定された値です。
このテーマ関数への参照によってパラメータを渡す方法はありますか?
ご協力ありがとうございます

+0

function theme_rss_feeds($件名){...} – Nikit

答えて

1

できません。それは不可能です。

しかし、あなたはとにかくそれを望んでいません。代わりに、Nikitが提案したように関数定義から&を削除したいとします。

+0

しかし、いくつかの条件に基づいて動的に定義されるブロックの件名が必要です...そのため、私はrefで渡しました – Alaa

+2

その後、そのロジックをhook_block ()では、テーマ関数には論理が含まれてはいけません。それらはデータの書式設定に関するものです。そこにタイプミスがあることに注意してください($ blcokと$ block)。 – Berdir

+0

"しかし、とにかくそれを望んでいない。" <どうしてそうですか?問題は何ですか?なぜ私はそれらを直接操作したいときにテーマに渡す変数のコピーを作成する必要がありますか?ちょうど例:私のテーマ機能は、すべてのページリクエストで時間を稼ぐ必要があります。 – sobi3ch