Drupal从重定向url获取路径

时间:2014-04-16 09:51:52

标签: redirect drupal drupal-path-aliases

我想知道Drupal中是否有任何方法可以使用另一个url重定向的url获取原始URL。

是的,我有一个网址和别名: /价格/旧车 - >节点/ 112

我和url重定向为 - >

/ old-vehicles-pricing - > /价格/旧车辆

我想写一个函数来从“/ old-vehicles-pricing”中获取“/ price / old-vehicles”

感谢。

更新

我将尝试详细说明该方案。 假设用户登陆旧车定价,那么他被重定向到/ price / old-vehicle,这是node / 112的别名。全对了。

现在说用户登陆/ de / old-vehicles-pricing(德语版)。该网址重定向不存在。虽然我可以为该特定页面创建重定向,但我正在尝试获得一般解决方案。 所以我要做的是拦截无效的网址,删除语言前缀,并获取该网址的原始网址。也就是说, 步骤1.我拦截对/ de / old-vehicles-pricing的请求 第2步。我采取“旧车定价” 第3步。我获得原始别名或规范网址(/ price / old-vehicles或node / 112) 第4步。我获得了规范网址的翻译版本 步骤5.我将用户重定向到新的翻译网址

我只需要解决第3步。我已经实施了所有其他步骤。

另外,我知道用户不应该以“/ de / old-vehicles-pricing”为起点。但这是我无法控制的,这就是我试图实施这个解决方案的原因。

由于

1 个答案:

答案 0 :(得分:0)

即使我不理解你为什么只在另一个页面上重定向人员而创建了一个页面,这里有一个写入自定义模块的解决方案:

<?php
/**
* Implements hook_menu
*/
function mymodule_menu() {
  $menu['old-vehicles-pricing'] = array(
    'title' => 'Old vehicles pricing',
    'page callback' => 'drupal_goto',
    'page arguments' => 'prices/old-vehicles',
    'access callback' => 'whetever-you-want',
  );
  return $menu;
}
?>