2011-02-20 21 views
1


我的Drupal模塊 「MyMod」
鉤塊i有:如何在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){...} 

現在我一直在管理/報告/事件
中收到此錯誤 參數1 to theme_rss_feeds()預計會成爲參考,值在/var/www/staging/htdocs/includes/theme.inc上線656
如何通過引用來傳遞參數這個主題函數?
感謝您的幫助

+0

function theme_rss_feeds($ Subject){...} – Nikit

回答

1

您不能。是不可能的。

不過,你不想那樣。相反,您想從Nikit建議的功能定義中刪除&。

+0

但我需要基於某些條件動態定義塊的主題......這就是爲什麼我通過它參考 – Alaa

+2

然後將該邏輯移動到hook_block (),主題函數不應包含任何邏輯。他們只是關於格式化數據。請注意,有一個錯字($ blcok vs $ block)。 – Berdir

+0

「不過,你不想那樣。」 <爲什麼這樣?有什麼問題?當我想直接操作它們時,爲什麼需要創建一個將它傳遞給主題的副本?舉個例子:我的主題功能需要在每個頁面請求上運行hundert時間。 – sobi3ch