目前,如果用户未登录,则在UberCart结账时会将其重定向到“登录页面”。我需要将它们重定向到“注册”页面。
换句话说:
Go here: user/register
NOT here: user
这里的关键是让它与UberCart一起使用。我知道你可以使用登录雪橇和其他技巧来正常进行,但我不能让它与UberCart合作?
更新
我仍然没有一个像样的解决方案所以我为此添加了赏金。目前,如果您禁用“匿名结帐”,ubertcart会自动添加以下消息:
这也是一个问题,如果您转到用户页面,显示它们是没有意义的。因此,即使我遇到“用户?目的地=购物车/结账”并且用户未登录时将用户转发到/ user / register也很难,将它们转发到“user / register?destination = cart / checkout”不会工作得很好。
有什么想法吗?
更新2
这就是魔术发生的地方:第94行,uc_cart.pages.inc
// Send anonymous users to login page when anonymous checkout is disabled.
if (!$user->uid && !variable_get('uc_checkout_anonymous', TRUE)) {
drupal_set_message(t('You must login before you can proceed to checkout.'));
if (variable_get('user_register', 1) != 0) {
drupal_set_message(t('If you do not have an account yet, you should <a href="!url">register now</a>.', array('!url' => url('user/register', array('query' => drupal_get_destination())))));
}
drupal_goto('user', array('query' => drupal_get_destination()));
}
所以,基本上我需要一种方法来覆盖这种行为? (即没有黑客核心?)
答案 0 :(得分:2)
您应该查看规则和令牌模块。您将在用户登录以重定向到TOKEN时创建规则。确保您也启用了令牌操作模块。