我对于从版本2.2.0 - 10/09/2014添加的woocommerce的调整有疑问。 在此更新中,清除并擦除注销时的会话数据,默认情况下会发生这种情况。 我不希望发生这种情况进入我的网站,我希望当costumer登录以保存数据时。例如,如果客户将商品添加到购物车,则注销。我希望他再次烧掉后再装上购物车。 如何禁用此调整!!
谢谢
答案 0 :(得分:0)
查看WC_Session_Handler
中的includes/wc-session-handler.php
类我认为我已将此跟踪到destroy_session
挂钩上运行的clear_auth_cookie
方法。因此,要禁用它,您需要从该挂钩中删除此方法。
请注意,这是完全未经测试的,因此请自行承担风险:
function so_26720687_keep_session_on_logout(){
remove_action( 'clear_auth_cookie', array( WC()->session, 'destroy_session' ) );
}
add_action( 'woocommerce_loaded', 'so_26720687_keep_session_on_logout' );
答案 1 :(得分:0)
如果其他人想要解决此问题,请将以下内容添加到主题functions.php文件中。这将保留当前会话,包括退出时的活动推车。
function present_keep_sessions_on_logout(){
remove_action( 'wp_logout', array( WC()->session, 'destroy_session' ) );
}
add_action( 'woocommerce_init', 'present_keep_sessions_on_logout' );