05. Xây dựng trang cấu hình cho module

Một ứng dụng thường thì phải lưu trữ một số tham số. Trong bài viết này, chúng ta sẽ theo dõi một ví dụ cho trường hợp cụ thể:

  • Path của trang cấu hình: http://webcủatui.com/?q=admin/settings/thanhkinh
  • Một vùng lưu trữ bản dịch mặc định.
  • Một vùng lưu trữ sách và chương mặc định.

Mở file 'thanhkinh.module', thêm hàm _menu và _settings như sau:

<?php
/*
 * '_menu' là một móc hệ thống của drupal
 */
function thanhkinh_menu() {
  return array(
    
// định nghĩa path nào sẽ là của trang cấu hình
    
'path' => 'admin/settings/thanhkinh',
    
// định nghĩa tiêu đề của trang cấu hình
    
'title' => 'Trang cấu hình',
    
// hàm nào chịu trách nhiệm xuất nội dung cho trang cấu hình
    
'callback' => 'thanhkinh_setting',
    
// tên của thao tác là gì, xem lại bài (03)
    
'access' => user_access('quản lý'),
    
'type' => MENU_NORMAL_ITEM
  
);
}

/*
 * hàm này được gọi đến để tạo nội dung cho trang cấu hình
 * để ý nội dung hàm thanhkinh_menu, có thấy
 * giá trị của key callback là tên của hàm này
 */
function thanhkinh_settings() {
  return 
'Nội dung của trang cấu hình!';
}
?>

Lưu nội dung, rồi thử vào trang http://webcủatui.com/?q=admin/settings/thanhkinh xem, có chuyện gì xảy ra nè :-D Tới đây, bạn đã biết công dụng và cách viết hàm hàm '_menu' như thế nào! Tiếp theo chúng ta sẽ xây dựng hàm tạo nội dung cho trang cấu hình này:

<?php
  $form
['thanhkinh_settings'] = array(
    
// [bài viết chưa xong, xin chờ cập nhật]
  
);
  return 
system_settings_form($form);
?>

:-)

Thế Hồng,

Tham khảo
[1] Forms API Reference
[2] Forms API Quickstart Guide
[3] variable_get('variable_name', default_value)
[4] db_query_range
[5] hook_menu @ Drupal HEAD

Comments

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <sup> <br> <p> <h3>
  • Lines and paragraphs break automatically.
  • Link to content with [[some text]], where "some text" is the title of existing content or the title of a new piece of content to create. You can also link text to a different title by using [[link to this title|show this text]]. Link to outside URLs with [[http://www.example.com|some text]], or even [[http://www.example.com]].
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>. The supported tag styles are: <foo>, [foo]. PHP source code can also be enclosed in <?php ... ?> or <% ... %>.

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.