php – 设置WooCommerce购物车到期日

我想在woocommerce会话到期时删除购物车内容.
我可以看到有一个变量设置类WC_Session_Handler中的时间,但是当它到期时,产品不会从购物车中删除(我想它的设计就像这样,这不是错误).

那么请告诉我如何设置woocommerce购物车的会话到期时间,以便购物车内容在到期时被删除

解决方法

从我所看到的,WooCommerce 2.0.20有一个计划的维护工作,每天运行两次,将从wordpress选项表中删除任何购物车会话.认过期时间设置为用户首次创建购物车时的48小时.我猜你的标准wordpress调度例程(和服务器cron / at jobs)需要正常运行才能执行.

AFAIK无法通过设置调整48小时规则.您可以在主题或“相邻”插件中编写过滤器.

以下是我在我的网站上构建的新“WooCommerce Extend Cart Timeout”插件中的一些代码片段:

在我的WoocommerceLicenseAPI类中:

if ( ! class_exists( 'WoocommerceLicenseAPI' ) ) {
add_filter('wc_session_expiring',array('WoocommerceLicenseAPI','filter_ExtendSessionExpiring') );

add_filter('wc_session_expiration','filter_ExtendSessionExpired') );
{

static function filter_ExtendSessionExpiring($seconds) {
    return (60 * 60 * 24 * 8) - (60 * 60);
}
static function filter_ExtendSessionExpired($seconds) {
    return 60 * 60 * 24 * 8;
}

HTH

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...