Cho phép người dùng thêm các thuật ngữ phân loại nhưng yêu cầu quản trị viên xác minh chúng


8

Tôi muốn cho phép người dùng thêm các thuật ngữ phân loại mới, nhưng tôi muốn điều này được xác minh bởi quản trị viên. Cách tôi hình dung công việc này sẽ có một người dùng điền vào biểu mẫu sẽ gửi thông báo đến quản trị viên được chỉ định; sau đó, nếu quản trị viên chấp nhận người dùng yêu cầu một số hook hoặc phương thức sẽ được kích hoạt sẽ tạo ra thuật ngữ phân loại mới.

Có cách nào để làm điều này với Drupal không?


2
Đó chắc chắn là một ý tưởng tốt cho một mô-đun mới (tôi không biết về bất kỳ mô-đun nào để cung cấp chức năng đó hiện tại). Bắt đầu tốt nhất có lẽ là để xoay quanh với hook_taxonomy_term_insert.
Paul

Câu trả lời:


8

Động não ở đây ... bây giờ phân loại học là một phần của hệ thống thực thể, nên có thể làm một cái gì đó như thế này:

  1. Cài đặt http://drupal.org/project/workflow
  2. Thêm một trường vào phân loại của bạn được gọi là "Đã xuất bản" hoặc "Đã phê duyệt", đó là hộp kiểm boolean
  3. Thiết lập quy trình công việc được kích hoạt khi tạo thuật ngữ phân loại với Được phê duyệt là trường chỉ có thể truy cập đối với quản trị viên
  4. Viết một cái móc vào các thuật ngữ phân loại loại bỏ một thuật ngữ trừ khi nó được chấp thuận (đây là phần khó khăn - có rất nhiều cách để đi đến các thuật ngữ phân loại, vì vậy điều này có thể làm cho phương pháp này được đưa ra).

Thay thế: Vì bạn đã đề cập đến một người dùng điền vào biểu mẫu - bạn có thể dễ dàng có một loại nội dung gọi là "Thuật ngữ phân loại" hoặc một cái gì đó với các trường Phân loại cần thiết, sau đó sử dụng quy trình / Quy tắc để gửi bài cho quản trị viên, khi phê duyệt sử dụng Quy tắc hoặc mã tùy chỉnh để tạo một thuật ngữ phân loại mới.


1
Ý kiến ​​hay. Để giải quyết điểm thứ 4, bạn có thể dễ dàng thực hiện hook_taxonomy_term_view_alter(), kiểm tra xem liệu thuật ngữ có được phê duyệt hay không và áp dụng '#access' => FALSEcho mảng kết xuất để ngăn không hiển thị. Điều đó sẽ làm việc trên toàn hệ thống (ngoại trừ có thể cho các chế độ xem dựa trên phân loại sử dụng các trường thay vì các chế độ xem và không thực hiện kiểm tra thêm).
Clive

3

Tôi chưa bao giờ làm điều gì đó như thế này, nhưng cách tiếp cận của tôi sẽ là tạo ra một loại nội dung "thuật ngữ phân loại đề xuất" và mô hình hóa logic thông qua mô-đun Rules .

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.