2014-06-20 107 views
0

我很難完全掌握實現鉤子主題的語義,因此瞭解預處理/處理函數的創建方式。我使用的是「Drupal 7權威指南」,其中規定(技術上)下面的代碼應該實現/定義/並輸出主題函數。Drupal預處理/鉤混亂

/** 
* Implements hook_theme(). 
**/ 

<?php 
// core/module_urtheme() - kiwi is the themesname 
function node_kiwi(){ 
return array(
'addBlock' => array(
    'block' => 'content' 
), 
); 
} 
//define theme_functionName/ should it be theme_addBlocK? 
function kiwi_addBlock($block){ 
return '<div class="kiwi-block">'.$block.'</div>';} 
//use 
print theme('addBlock',$block) 

我的問題在於我雞犬不寧的問候語法預處理功能有:

<?php 
/** 
    * Implements template_preprocess_THEMEHOOK(). 
    */ 
    function HOOK_preprocess_THEMEHOOK(&$variables) { 
    // Changes go here. 
    } 

最終我知道這兩個HOOKTHEMEHOOK是佔位符,但用什麼來替代他們,HOOK模塊/模板/主題?對於THEMEHOOK - 函數的名稱/主題/?我試着比較上面的主題鉤子實現,但它讓我更加困惑。 對於我可能提出/說出的任何天真的錯誤,我很抱歉。任何和所有的幫助將不勝感激:)。

回答

1

據我所知,HOOK是模塊或主題的名稱,而THEMEHOOK是在hook_theme()中定義的鉤子,典型的是「塊」,「節點」等。例如: Yourmodule_preprocess_node(& $變量)。

+1

是的,從字面上看,剛剛達到了相同的結論,在進一步閱讀並查看node.module後,但感謝您重新確認我的想法:D ...我應該在panicing之前嘗試更多一點:P – Bakajuice