Trong Drupal 7, trường "Toàn cầu: Tóm tắt kết quả" trong tiêu đề Chế độ xem cung cấp cho bạn một số mã thông báo để có quyền truy cập vào một số thông tin về chế độ xem (ví dụ: trường có mã thông báo có tên @name -- tên mà con người có thể đọc được của view
để in tên Xem).
Tuy nhiên, để tìm nạp tên hiển thị của Chế độ xem, bạn cần tạo trình xử lý Chế độ xem tùy chỉnh để xác định mã thông báo của riêng bạn:
- Tạo một mô-đun mới. trong bạn
my_module_name.info
tập tin, thêm các dòng:
phụ thuộc [] = lượt xem
tệp [] = handlers/views_handler_my_custom_handler.inc
- trong bạn
my_module.module
tệp, hãy thêm hook_views_data():
hàm my_module_views_data() {
// Định nghĩa trình xử lý tùy chỉnh của bạn
$data['views']['my_module_custom_handler'] = mảng(
'title' => t('Trình xử lý tùy chỉnh của tôi'),
'help' => t('Mã thông báo tùy chỉnh để truy cập Xem thông tin'),
'diện tích' => mảng (
'trình xử lý' => 'views_handler_my_custom_handler',
),
);
trả lại dữ liệu $;
}
- Cuối cùng, tạo các
trình xử lý/views_handler_my_custom_handler.inc
tập tin. Nội dung cơ bản nhất dựa trên nhu cầu của bạn sẽ giống như:
/**
* @tập tin
* Định nghĩa của view_handler_area.
*/
/**
* Trình xử lý khu vực xem để hiển thị một số tóm tắt kết quả có thể định cấu hình.
*
* @ingroup lượt xem_area_handlers
*/
lớp views_handler_my_custom_handler mở rộng views_handler_area {
hàm option_definition() {
$options = parent::option_definition();
$options['content'] = mảng(
'default' => 'Hiển thị mã thông báo chế độ xem',
'có thể dịch' => ĐÚNG,
);
trả lại tùy chọn $;
}
chức năng options_form(&$form, &$form_state) {
cha mẹ::options_form($form, $form_state);
biến $ = mảng (
'mục' => mảng (
'@display_name -- tên của màn hình Xem'
),
);
$list = theme('item_list', $variables);
$form['content'] = mảng(
'#title' => t('Hiển thị'),
'#type' => 'vùng văn bản',
'#hàng' => 3,
'#default_value' => $this->options['content'],
'#description' => t('Bạn có thể sử dụng mã HTML trong trường này. Các mã thông báo sau được hỗ trợ:') . danh sách $,
);
}
/**
* Tìm hiểu thông tin để kết xuất.
*/
hàm kết xuất($empty = FALSE) {
$format = $this->options['content'];
// Thay thế "@display_name" bằng xem giá trị hiển thị hiện tại
$output = filter_xss_admin(str_replace("@display_name", $this->view->current_display, $format));
trả lại đầu ra $;
}
Đó là nó. Trình xử lý chế độ xem tùy chỉnh của bạn hiện có sẵn trong bất kỳ Chế độ xem nào.
Tôi khuyên bạn nên xem tệp view_handler_area_result.inc (mã cho trường "Toàn cầu: Tóm tắt kết quả") trong mô-đun Chế độ xem nếu bạn muốn mở rộng tệp để có sẵn mã thông báo trong trình xử lý tùy chỉnh của mình.