Php 如何清理废弃的购物车
我遇到了在某些页面加载上清除Woocommerce购物车的代码 但是,我想知道有没有办法在车子被遗弃后清理掉它 对于仅在首页上触发,您的函数需要如下所示: } 函数is_front_page()仅在wordpress站点的首页上返回true。此外,您还可以使用函数is_page()检测任何其他页面,您可以在其中传递任何页面标题、ID或slug 从这个问题: 据我所见,WooCommerce 2.0.20有一个计划维护作业,每天运行两次,将从WordPress选项表中删除任何购物车会话。默认过期时间设置为用户首次创建购物车后48小时。我猜您的标准WordPress调度例程(以及服务器cron/at作业)需要正常运行才能执行 抱歉,无法通过设置调整48小时规则。你可以在你的主题或“相邻”插件中编写一个过滤器 我对代码进行了一些调整,以切换到24小时会话。我不确定您是否希望每隔几分钟删除一次,因为这可能会导致性能下降Php 如何清理废弃的购物车,php,wordpress,woocommerce,cart,Php,Wordpress,Woocommerce,Cart,我遇到了在某些页面加载上清除Woocommerce购物车的代码 但是,我想知道有没有办法在车子被遗弃后清理掉它 对于仅在首页上触发,您的函数需要如下所示: } 函数is_front_page()仅在wordpress站点的首页上返回true。此外,您还可以使用函数is_page()检测任何其他页面,您可以在其中传递任何页面标题、ID或slug 从这个问题: 据我所见,WooCommerce 2.0.20有一个计划维护作业,每天运行两次,将从WordPress选项表中删除任何购物车会话。默认过期时
add_filter('wc_session_expiring', 'so_26545001_filter_session_expiring' );
function so_26545001_filter_session_expiring($seconds) {
return 60 * 60 * 23; // 23 hours
}
add_filter('wc_session_expiration', 'so_26545001_filter_session_expired' );
function so_26545001_filter_session_expired($seconds) {
return 60 * 60 * 24; // 24 hours
}
如何定义“放弃”以及我们应该如何测试它?我想如果有某个计时器,购物车内容在一定的时间后没有被检出?这是5年前的代码。但是,这些过滤器似乎仍然位于WC核心中,并且仍然负责确定保留用户会话的时间长度。
add_filter('wc_session_expiring', 'so_26545001_filter_session_expiring' );
function so_26545001_filter_session_expiring($seconds) {
return 60 * 60 * 23; // 23 hours
}
add_filter('wc_session_expiration', 'so_26545001_filter_session_expired' );
function so_26545001_filter_session_expired($seconds) {
return 60 * 60 * 24; // 24 hours
}