Câu trả lời:
Một trang bị từ chối truy cập tùy chỉnh có thể được xác định trong / admin / config / system / site-information. Ví dụ: một trang lỗi 404 phổ biến được cung cấp bởi mô-đun Search404 .
Tất cả bạn phải làm là xác định trang của riêng bạn, có lẽ với một lời trêu ghẹo từ trang được yêu cầu và thông báo cho người dùng rằng việc truy cập vào toàn bộ nội dung yêu cầu họ phải đăng nhập.
Điều này có thể sẽ yêu cầu bạn đặt một số mã php vào thân trang hoặc bạn có thể sử dụng mô-đun Search404 làm cơ sở để phát triển mô-đun của riêng bạn để xử lý việc này.
Chỉnh sửa: Tôi càng nghĩ về điều này, câu hỏi càng trở nên thú vị. Tôi nghĩ rằng một trường hợp có thể được thực hiện để xin phép 'Xem Teaser' bên cạnh 'Xem nội dung được xuất bản'. Nói cách khác, trang có thể có sẵn cho tất cả người dùng, nhưng lời trêu ghẹo sẽ hiển thị thay vì toàn bộ nội dung và một thông báo có thể được hiển thị cho biết rằng người dùng phải đăng nhập để xem toàn bộ nội dung, giống như được thực hiện cho bình luận ngay bây giờ. Có lẽ một ý tưởng cho một mô hình đóng góp (không thể tìm thấy trên DO).
Tôi nghĩ bạn có thể sử dụng trang - 403.tpl.php và trang - 404.tpl.php và mã trong template.php thông qua
function THEMENAME_preprocess_page(&$variables) {
$status = drupal_get_http_header("status");
if($status == '403 Forbidden') {
$variables['theme_hook_suggestions'][] = 'page__403';
}
if($status == '404 Not Found') {
$variables['theme_hook_suggestions'][] = 'page__404';
}
}
Tôi đang sử dụng mô-đun lỗi tùy chỉnh cho việc này.
Để chuyển hướng đến trang được yêu cầu ban đầu sau khi 403 hoạt động, tôi đã tạo bản vá này .
Đây là hai ví dụ về việc sử dụng mô-đun của tôi: