Views: Tùy biến cách trình bày nội dung

Module taxonomy của Drupal là một module rất mạnh mẽ để phân luồng nội dung. Tuy nhiên, module này không cung cấp khả năng liệt kê nodes theo alphabet, tên người đăng bài, số lượng phản hồi, ... Module views làm được chuyện này.

Module tracker cũng là một module rất mạnh mẽ của Drupal, nó giúp người dùng xem tất cả các post được đăng lên. Nhưng người dùng chỉ muốn sử dụng tracker để xem các bài viết thuộc kiểu nội dung forum mà thôi thì module này không có cung cấp chức năng đó. Sử dụng module views, công việc trở nên khả thi.

Đó chỉ mới là mới 2 thí dụ áp dụng cho module views mà thôi. Khả năng của views còn lớn hơn nữa.


1. Giới thiệu views

Views là module giúp site designers muốn tùy biến cách trình bày danh sách nội dung của website khác với cách truyền thống của Drupal -- chẳng hạn là danh sách các articles, các bài viết mới, nội dung có đánh dấu taxonomy.

Views tạo ra các danh sách này và có thể trình bày chúng ở trang nội dung, ở block. Nó cũng có khả năng tạo hệ thống menu và tabs. Nội dung xuất ra bởi views có thể là danh sách các link, table hoặc danh sách các teaser (giống như trang chính, liệt kê dẫn nhập rồi cung cấp link đến bài viết chính)

2. Chi tiết cách tạo một view

  1. Basic information (Thông tin cơ bản)

    1. Name (Đặt tên)
      • Mỗi view phải có một tên
      • Các view khác nhau phải có tên khác nhau
      • Các ký tự cho phép để đặt tên cho view: a-z, 0-9 và _
    2. Access (quyền truy cập đến một view)
      • Có thể phân quyền sử dụng một view theo các role (vai trò) của hệ thống.
  2. Page (Trang)

    1. Provide page view
      • Nếu view được định nghĩa cung cấp view ở dạng page thì chọn. Và ngược lại.
    2. URL
      • Nếu view được định nghĩa có cung cấp page view, định nghĩa path nào mà view sẽ trình bày.
      • Thí dụ: URL của page view được định nghĩa là
        • "myview" thì page sẽ được trình bày ở http://web.com/?q=myview
        • "myview/1" ... http://web.com/?q=myview/1
      • Không nên bắt đầu hoặc kết thúc URL với ký tự ""
    3. View type:
      1. full nodes
        • Sẽ list tất cả các node tìm được dưới dạng node đầy đủ (thường thấy khi vào các trang ?q=node/8910
      2. teaser
        • Sẽ list ở dạng ngắn gọn (thường thấy ở trang chính của drupal.org)
      3. table view
        • Sẽ list ở dạng table. Mỗi dòng là mỗi node tìm được, mỗi cột là mỗi field được yêu cầu (sẽ xem xét ở mục IV)
      4. list view
        • Sẽ list các node tìm được ở dạng danh sách (giống như dạng list các thành viên trực tuyến)
      5. date: date browser
        • Tác giả chưa dùng thử
    4. Title: Tiêu đề của trang view mà view được định nghĩa cung cấp
    5. User pager: Nếu muốn biễu diễn list ở dạng phân trang thì click chọn user pager
    6. Breadcrumb trail should not include "Home":
      • Breadcrumb là phần liên kết ngay trên tiêu đề
      • Nếu muốn Breadcrumb không bao gồm Home thì click chọn và ngược lại
    7. Nodes per page:
      • Giới hạn số tin hiển thị mỗi trang
      • Trong trường hợp kết quả trả về lớn hơn giới hạn này, view sẽ chuyển các nodes sau ra (các) trang sau.
    8. Header:
      • Là phần nội dung được hiển thị phía trước nội dung chính
    9. Footer:
      • Là phần nội dung được hiển thị phía sau nội dung chính
    10. Empty text:
      • Là phần nội dung được hiển thị nếu kết quả trả về của view là rỗng.
    11. Menu
      • Tác giả chưa dùng thử
  3. Block