Posted by phuong.phuong on April 1, 2008 at 7:57am
Mình tạo Vocabulary và Term (bằng giao diện admin) liên kết với node type Promotion thì trên form add promotion tự động show ra mấy cái Category ra luôn, làm sao cho nó ko tự show mà mình tự viết form cho các field category (dạng list-box) đó?
Khi categories tự show ra form thì thứ tự của nó so với các field khác (các field định nghĩa trong code của node module promotion) không đúng ý định, làm sao fix lại?
Mình nghĩ ai làm rồi chắc cũng đụng mấy problem này, cùng chia sẻ.

Comments
Có thể - sử dụng
Có thể
- sử dụng hook_form_alter (có lẽ có một hook khác) để làm việc này, thay đổi các #type của vocabulary element thành 'checkboxes'.
- Hoặc chèn vào một đoạn JS.
Thế Hồng
Cũng chú ý là tổ
Cũng chú ý là tổ chức term trong một vocab có thể phân tầng dạng:
Term A- Term 1
-- Term 1.1
-- Term 1.2
- Term 2
Term B
- Term 1
Term C
- Term 2
- Term 1.2
Với cấu trúc như vậy thì rõ ràng #type 'checkboxes' không đáp ứng được. Wim Leer có viết module hierarchy_select khá hay, (phụ thuộc module jquery_interface => jquery_update), bạn có thể tham khảo.
Thế Hồng
Đã giải quyết được
<?php/**
* Implementation of hook_form_alter()
*/
function promotion_form_alter($form_id, &$form) {
if ($form_id == 'promotion_node_form') {
$form['taxonomy']['#weight'] = -10;
$form['taxonomy']['#type'] = FALSE;
}
}
?>
form_alter() thật mạnh mẽ !!!
Thanks các giải pháp gợi ý của Thế Hồng !