2

我遇到了一个关于 CartThrob 的奇怪问题。谷歌搜索和 CartThrob 论坛尚未透露答案。

购物车发送到支付网关后,它会向模板返回“授权”、“处理”、“拒绝”或“失败”的“状态”。

我发现这种“状态”在浏览器刷新后仍然存在,包括完全(无缓存)浏览器刷新。

这主要是“授权”消息的问题。当订单已 100% 完成时,会出现“已授权”消息。

我看到的是,如果我立即开始另一个订单并转到此代码所在的模板,“授权”消息仍然存在。消息最终消失了……可能在 10/20 分钟左右之后。但在我看来,它应该立即消失,对吧?订单完成。清除一切。

这个“状态”是否存储在 CartThrob 会话中?我可以强制清除 CartThrob 会话吗?

        {exp:cartthrob:submitted_order_info}
            {if authorized}
                   Order complete!
             {if:elseif processing}
                   Your order is being processed!
             {if:elseif declined}
                   Your credit card was declined: {error_message}
             {if:elseif failed}
                   Your payment failed: {error_message}
             {/if}
        {/exp:cartthrob:submitted_order_info}
4

2 回答 2

3

我有时发现这有助于清除购物车,它的工作方式类似于 {redirect="blah/blah"}

{exp:cartthrob:clear_cart return="about/stuff" }

当然,如果需要通过链接触发,细分可以提供帮助

{if segment_3 == "foo"}
{exp:cartthrob:clear_cart return="about/stuff" }
{/if}
于 2012-10-31T10:09:25.200 回答
3

如果您只希望此信息显示在结帐后页面上,最简单的选择是将一个order_status段添加到您的网关返回 URL,然后仅在submitted_order_info该段存在时才输出标签。

我相当确定这clear_cart只是删除购物车内容而不是完全刷新 CT 会话数据(我认为这只是通过注销触发的)。

于 2012-10-31T13:43:23.017 回答