Tôi đang cố gắng thêm một hình thức đăng nhập vào trang bị từ chối truy cập và tự hỏi liệu điều này có thể thông qua UI hay không.
Bất kỳ đề xuất / ý tưởng?
Tôi đang cố gắng thêm một hình thức đăng nhập vào trang bị từ chối truy cập và tự hỏi liệu điều này có thể thông qua UI hay không.
Bất kỳ đề xuất / ý tưởng?
Câu trả lời:
Một giải pháp khác ở đây là mô-đun LoginToboggan . Nó cung cấp một số cải tiến khác nhau cho chức năng đăng nhập.
Mô-đun logintoboggan cung cấp một số sửa đổi của hệ thống đăng nhập drupal trong một mô-đun bên ngoài bằng cách cung cấp các tính năng và cải tiến khả năng sử dụng sau đây:
- cho phép người dùng đăng nhập bằng tên người dùng hoặc địa chỉ email của họ.
- cho phép người dùng đăng nhập ngay lập tức.
- cung cấp một hình thức đăng nhập trên các trang bị từ chối truy cập cho người dùng không đăng nhập (ẩn danh).
- mô-đun cung cấp hai tùy chọn khối đăng nhập: một sử dụng javascript để hiển thị biểu mẫu trong khối ngay khi nhấp vào "đăng nhập". cái kia đưa người dùng đến một trang riêng, nhưng trả người dùng về trang gốc của họ sau khi đăng nhập.
- tùy chỉnh mẫu đăng ký với hai trường e-mail để đảm bảo độ chính xác.
- tùy chọn chuyển hướng người dùng đến một trang cụ thể khi sử dụng tính năng 'đăng nhập ngay lập tức'.
- tùy chọn chuyển hướng người dùng đến một trang cụ thể sau khi xác thực địa chỉ email của họ.
- tùy chọn hiển thị thông báo người dùng cho biết đăng nhập thành công.
- tùy chọn kết hợp cả hình thức đăng nhập và đăng ký trên một trang.
- tùy chọn có người dùng không có giá trị thanh trừng khỏi hệ thống theo một khoảng thời gian xác định trước (vui lòng đọc phần cảnh báo của install.txt để biết thông tin quan trọng về cách định cấu hình tính năng này!).
- tích hợp với mô-đun quy tắc để thực hiện các tác vụ khác nhau khi người dùng xác thực qua quy trình xác thực email (xem http://drupal.org/node/880904 để biết ví dụ)
Biểu mẫu cấu hình cài đặt có một tùy chọn gọi là Biểu mẫu đăng nhập hiện tại khi bị từ chối truy cập (403) bật / tắt chức năng chính xác này.
Các CustomError mô-đun cho phép quản trị trang web để tạo các trang lỗi tùy chỉnh cho HTTP mã trạng thái 403 (access denied) và 404 (không tìm thấy), mà không cần phải tạo các nút cho mỗi người trong số họ. Một số chi tiết khác về các tính năng của nó (từ trang dự án của nó):
- Tiêu đề và mô tả trang cấu hình.
- Không có tiêu đề tác giả và ngày / thời gian như với các nút bình thường.
- Bất kỳ văn bản định dạng HTML có thể được đặt trong thân trang.
- Các trang lỗi là có thể.
- Người dùng chưa đăng nhập và cố gắng truy cập vào một khu vực yêu cầu đăng nhập sẽ được chuyển hướng đến trang mà họ đang cố truy cập sau khi họ đăng nhập.
- Cho phép chuyển hướng tùy chỉnh cho 404s.
Bạn nên quan tâm đến phần " Người dùng chưa đăng nhập và cố gắng truy cập vào một khu vực yêu cầu đăng nhập sẽ được chuyển hướng đến trang mà họ đang cố truy cập sau khi họ đăng nhập. ".
"Thêm cài đặt cho 'trang bị từ chối truy cập' và hiển thị khối 'Đăng nhập người dùng' trên trang đó" thực sự là một giải pháp nên hoạt động. Tuy nhiên, bạn có thể tiến thêm một bước này và nâng cao trải nghiệm người dùng AbitMORE. Bằng cách sử dụng một biến thể của cách tiếp cận được mô tả trong câu trả lời cho câu hỏi về " Cách chuyển hướng người dùng ẩn danh đến trang đăng nhập bằng mô-đun Rules? ".
Để làm như vậy, giả sử đường dẫn của trang "Mặc định 403" được đặt thành "no_access" (thông qua /admin/config/system/site-information
, gần cuối trang quản trị viên đó). Sau đó, tạo quy tắc bằng mô-đun Quy tắc , với sự kiện như "Sau khi truy cập nút 'no_access'". Vì vậy, toàn bộ quy tắc sẽ trông giống như vậy:
Điều kiện:
Parameter: User: [site:current-user], Roles: anonymous user
Parameter: Text: [site:current-page:url], Matching text: user/login
Hành động: Chuyển hướng trang -Parameter: URL: user/login
Nếu bạn muốn làm như vậy, bạn thậm chí có thể thêm một Hành động khác để hiển thị một số tin nhắn (thông tin) trong vùng tin nhắn Drupal, với nội dung như "Bạn đã cố truy cập trang cần đăng nhập ...".
Đúng, nó có thể yêu cầu bạn kích hoạt một mô-đun đóng góp thêm ( Quy tắc ). Nhưng, như được chỉ ra bởi mức độ phổ biến ngày càng tăng của nó, mô-đun đó có thể đã được kích hoạt ở hầu hết mọi trang web (tương tự mô-đun Lượt xem ), vì có hàng tá trường hợp sử dụng cho mô-đun này. Chỉ cần 1 biến thể của câu hỏi này: làm thế nào về việc nâng cao trải nghiệm người dùng cho "Không tìm thấy trang" theo cách tương tự?
Một biến thể khác, thay thế cho Quy tắc "Hành động" (để chuyển hướng đến user/login
), là tạo một số nút được chỉ định, giả sử với một đường dẫn như "my_login_page_with_login_block". Và sau đó kết hợp điều này với việc định cấu hình khối "Đăng nhập người dùng" (thông qua admin/structure/block
) như vậy:
configure
liên kết "" ở bên phải của khối đăng nhập Người dùng đó, để đặt " Cài đặt hiển thị " cho " Trang ". Tức là thay đổi tùy chọn cho " Hiển thị khối trên các trang cụ thể " thành " Chỉ các trang được liệt kê " và chỉ định đường dẫn ( my_login_page_with_login_block
) trong hộp văn bản bên dưới nó. Nếu vì lý do nào đó bạn không muốn sử dụng một đường dẫn, thì chỉ cần chỉ định nút / nid (nid = id của nút) làm đường dẫn thay thế.Nếu không có mô-đun LoginToboggan, người ta có thể định cấu hình khối đăng nhập Người dùng hiển thị trên các trang được chỉ định và giới hạn cho người dùng ẩn danh. Trong khối Cài đặt hiển thị cho khối đăng nhập Người dùng:
Trong tab "trang", đặt "Hiển thị khối trên các trang cụ thể" thành "Chỉ các trang được liệt kê" và nhập các trang.
Trong tab "Vai trò", kiểm tra "người dùng ẩn danh" cho khối Hiển thị cho cài đặt vai trò cụ thể.
Về lý thuyết, bạn có thể đặt trang Mặc định 403 (truy cập bị từ chối) trong Thông tin trang web thành người dùng / đăng nhập tại / admin / config / system / site-information.
Chưa bao giờ thử nó nhưng nó chỉ là một ý tưởng?