2013-06-04 37 views
1

到期重定向是否有通過它可以一次會議drupal 6。現在到期時會話過期我得到一個消息"Access denied.You are not authorized to access this page."將用戶重定向到登錄頁面的任何手段。我真的不希望這條消息被顯示,而是它會好得多,如果我可以重定向他們到登錄頁面。請有人請幫助我..如何將用戶登錄頁面時,會議在Drupal

+0

爲什麼不嘗試HTTP: //drupal.stackexchange.com專門針對drupal社區 –

+0

是否有任何模塊用於過期會話? – RajeevK

+0

@RajeevK。不,我沒有使用任何貢獻的模塊。 – Outlooker

回答

0

There is a module for that. 只需安裝此模塊。它將用登錄表單取代傳統的訪問拒絕頁面。

+0

除了包含其他模塊之外,是否可以通過其他方式執行。??是在include文件夾中編輯common.inc文件的好主意。 – Outlooker

+2

不,編輯common.inc不是一個好主意,爲什麼你不想使用這個模塊? – RajeevK

+0

坦克的信息@ RajeevK.just好奇,如果我可以重寫此效果,而不是通過使用貢獻的模塊.. :) – Outlooker

2

下面是一個簡單的技巧:

添加以下代碼到你的頁面模板文件(page.tpl.php中)的最頂端:

global $user; 
if (!$user->uid && $title == 'Access denied') { 
    header('Location: /user?destination=' . substr($_SERVER['REQUEST_URI'],1)); 
    exit; 
} 
+0

'$ _SERVER ['REQUEST_URI']'只在apache上可用。使用Drupal的['request_uri()'](https://api.drupal.org/api/drupal/includes!bootstrap.inc/function/request_uri/6)函數來代替它(它也會剝去你的主斜槓,所以你可以也跳過'substr()')。 –

1

我想你可以覆蓋功能:template_process_page ()在您的主題template.php

在這裏你可以查看全球$用戶,要檢查是$用戶> UID,如果它等於0,使用功能drupal_goto(),頁面想要

相關問題