在将项目添加到购物车后登录后重定向

时间:2014-04-10 03:19:43

标签: drupal drupal-7 drupal-modules drupal-commerce

所以我在我的网站add to cart image

上有这个页面

我可以将用户重定向到,如果用户没有登录,我的重定向页面就在这里, redirect image

我现在想要的是在用户注册/登录后,他将返回添加到购物车页面(第1张图片)或添加了商品/产品的购物车...

我尝试使用规则,但我只能重定向到产品/项目页面,我想要用户选择在注册/登录之前添加卡片的项目..

谁有人找我?感谢您的支持:)

2 个答案:

答案 0 :(得分:0)

唯一的方法是检查在登录和注册表单的提交中是否存在会话中存储的任何订单。

您可以使用commerce_cart_order_session_exists()

检查会话中是否有任何订单

创建自定义模块,代码如下所示:

/**
* Implementation of hook_form_alter()
*/
function [YOUR_MODULE]_form_alter(&$form, &$form_state, $form_id)
{
    $myForms = array('user_login_block', 'user_login', 'user_register_form');
    if(in_array($myForms, $form_id))
    {
        $form['submit'][] = '_yourmodule_form_submit';
    }
}

/**
* Custom form submission callback
*/    
function _yourmodule_form_submit($form, &$form_state)
{
    if(commerce_cart_order_session_exists())
        $form_state['redirect'] = 'cart';
}

答案 1 :(得分:0)

使用目的地请登录以继续... tpl页面。

echo l('Log in', 'YOUR_LINK', array('query'=>array('destination'=>PRODUCT_LINK)));
echo l('Personal', 'YOUR_LINK', array('query'=>array('destination'=>PRODUCT_LINK)));
echo l('Business', 'YOUR_LINK', array('query'=>array('destination'=>PRODUCT_LINK)));

用户操作后,这将重定向到您的产品页面。