我正在处理一个Drupal网站,我们想要设置一个特殊的URL来重定向到外部网站。换句话说,如果http://www.mysite.com是我们的Drupal网站,我们希望http://www.mysite.com/external可以重定向到外部网站。
我对Drupal几乎没有经验,不知道如何设置。非常感谢您的帮助!
我对Drupal几乎没有经验,不知道如何设置。非常感谢您的帮助!
function mymodule_menu() {
$items = array();
$items['external'] = array(
'title' => 'Redirect',
'page callback' => 'mymodule_redirect',
'access callback' => TRUE,
'type' => MENU_CALLBACK,
);
return $items;
}
function mymodule_redirect() {
drupal_goto($url, array('external' => TRUE));
}
如果重定向用户的URL取决于在URL中传递的值,那么您可以使用类似以下代码的代码:
```function mymodule_menu() {
$items = array();
$items['external/%'] = array(
'title' => 'Redirect',
'page callback' => 'mymodule_redirect',
'page arguments' => array(1),
'access callback' => TRUE,
'type' => MENU_CALLBACK,
);
return $items;
}
function mymodule_redirect($id) {
// Calculate $url basing on the value of $id.
drupal_goto($url, array('external' => TRUE));
}
{ "rules_redirect_homepage" : {
"LABEL" : "Redirect homepage",
"PLUGIN" : "reaction rule",
"OWNER" : "rules",
"REQUIRES" : [ "rules" ],
"ON" : { "init" : [] },
"IF" : [
{ "data_is" : { "data" : [ "site:current-page:url" ], "value" : [ "site:url" ] } }
],
"DO" : [ { "redirect" : { "url" : "http:\/\/example.com" } } ]
}
}
你需要下载Clive提到的模块,然后你就可以添加一个菜单链接,无需任何模块即可重定向到外部网站。
1- 进入管理/结构/菜单
2- 选择要添加URL的菜单,然后点击{添加链接}
3- 在“路径”字段中添加外部路径,例如“http://yahoo.com”
祝好运!
drush cc all
命令),以避免致命的 PHP 错误:https://drupal.org/node/1948676 - therobyouknow