gpt4 book ai didi

api - drupal 重定向 API

转载 作者:行者123 更新时间:2023-12-04 22:04:47 25 4
gpt4 key购买 nike

如果登录用户试图访问它,我想将对“homebox/1”的请求重定向到“homebox/1/[uid]”。目前我还不关心匿名用户。

这是我放到首页的代码-homebox.tpl.php:

if(!is_numeric(arg(2))){
global $user;
if($user->uid){
if(count($_GET) > 1){
$get = array();
foreach($_GET as $k=>$v){
if($k != 'q')
$get[] = $k.'='.$v;
}
$get2 = '?'.implode('&',$get);
}
header("HTTP/1.1 301 Moved Permanently");
header('location:/homebox/1/'.$user->uid.$get2);
}else{
//redirect to error page
}
}

但是,*.tpl.php 文件是否在请求后期得到处理?在那种情况下,我这样做效率很低。

我知道路径重定向模块(http://drupal.org/project/path_redirect)。我不想使用它,因为我想了解是否有任何用于重定向的 Drupal API 和/或在处理链的开头捕获和重定向请求的方法。

谢谢阿鲁尔

最佳答案

您可能不得不使用 hook_menu_alter()但看起来 homebox_menu() 函数没有为 homebox/

定义条目

所以你只需编写自己的 hook_menu匹配 homebox/的实现并定义回调并将您的逻辑放在那里。

您可能想要用户 drupal_goto()自己做重定向。

希望从模板中删除此类逻辑做得很好。

关于api - drupal 重定向 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1333678/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com