創建用於創建自定義塊的自定義.tpl文件的drupal方法是什麼? 具體來說,我試圖以編程方式創建一個塊,然後找到一種方法來從模塊php代碼中分離視圖代碼。如果它是一個頁面,Drupal主題()將是實現這一目標的非常有效的方法。但是我找不到什麼是Drupal方式來爲自定義塊做同樣的事情。我試圖使用hook_theme()而沒有運氣。在drupal中爲自定義塊創建一個自定義模板文件
//implementation of hook_block_info
function mymodule_block_info() {
$blocks = array();
$blocks['myblock'] = array(
'info' => t('My Block Title'),
);
return $blocks;
}
//implementation of hook_block_view
function mymodule_block_view($delta='') {
$block = array();
switch($delta) {
case 'myblock' :
$block['content'] = mymodule_get_block_view();
break;
}
return $block;
}
function mymodule_get_block_view(){
$variables=array();
return theme('mytemplate', $variables);
}
//implementation of hook_theme
function codefactory_theme() {
return array(
'mytemplate' => array(
'variables' => array(),
'template' => 'mytemplate',
),
);
}