Cố gắng chuyển đổi một mô-đun từ Drupal 6 sang Drupal 7, định nghĩa loại nút riêng của nó trong hook_node_info.
Mặc dù hook_node_info định nghĩa has_title và has_body thành TRUE, làm thế nào tôi có thể khiến các trường này xuất hiện trên biểu mẫu nút? Trước đây, tôi đã sử dụng hook_form ():
function mymodule_form(&$node, $form_state) {
$type = node_get_types('type', $node);
if ($type->has_title) {
$form['title'] = array(
'#type' => 'textfield',
'#title' => check_plain($type->title_label),
'#required' => TRUE,
'#default_value' => $node->title,
'#weight' => -25,
);
}
if ($type->has_body) {
$form['body_field'] = node_body_field($node, $type->body_label, $type->min_word_count);
$form['body_field']['body']['#rows'] = 5;
$form['body_field']['body']['#description'] = 'Enter a short message to present to the user.';
}
return $form;
}
Trong D6, điều này làm việc tốt cho tôi. Trong Drupal 7, hook_form đã thay đổi và tôi không hoàn toàn làm theo tài liệu của nó.
Làm cách nào tôi có thể sử dụng Trường Thân và Tiêu đề trong lõi và gán chúng cho loại nút này khi mô-đun được kích hoạt?
Hơn nữa, làm cách nào tôi có thể xác định loại Trường mới để bắt chước Phần thân (Văn bản dài có tóm tắt) theo thứ tôi chọn?