改變 form 的 template

這次修改的是 views 的 exposed form
需要比較大的修改便想要使用 tpl 而不使用 template.php
舊文 form 也可以使用template (*.tpl.php)也有說明, 但已經不是 Drupal6.x 作法了

以下更新為 Drupal6.x 的作法:
先自建一個模組, 使用 hook_theme
定義如下:

<?php
function mymodule_theme($existing, $type, $theme, $path) {
  return array(
   
//form id
   
'form_id' => array(
     
'arguments' => array('node' => NULL),
     
'template' => 'search_form', //表示使用 search_form.tpl.php
   
),
  );
}
?>

重點在於提供一個 template 的值, 你便可以在該 tpl 檔使用 <?php $form; ?>
再使用 <?php drupal_render($form['title']); ?> 之類完成 form 的 各欄位和 html 碼

最後, 實作的時候記得清緩存就可以了

Google