Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wordpress 自动删除客户会话和瞬态_Wordpress_Woocommerce - Fatal编程技术网

Wordpress 自动删除客户会话和瞬态

Wordpress 自动删除客户会话和瞬态,wordpress,woocommerce,Wordpress,Woocommerce,我的一个客户的网站速度太慢了,等待时间是6到7秒。我找到了根本原因,这是因为wp_options表中填充了大量客户会话数据,将表大小增加到1.7GB。删除200万行需要6-7个小时。我知道我现在可以通过进入woocomece>System Status>Tools>Clear allsessions&Clear transients手动删除会话和瞬态,但我希望在一两天后自动完成。有什么可以做的吗,比如创建cron作业等等? 谢谢也许你应该试试这个插件: 很长一段时间以后,但安泽会帮助别人的 下面

我的一个客户的网站速度太慢了,等待时间是6到7秒。我找到了根本原因,这是因为
wp_options表
中填充了大量客户会话数据,将表大小增加到1.7GB。删除200万行需要6-7个小时。我知道我现在可以通过进入
woocomece>System Status>Tools>Clear all
sessions&Clear transients手动删除会话和瞬态,但我希望在一两天后自动完成。有什么可以做的吗,比如创建
cron作业
等等?
谢谢

也许你应该试试这个插件:


很长一段时间以后,但安泽会帮助别人的

下面的代码将每天执行(从您当前的时间开始),clean会话/购物车将继续运行

// clean cart every day
if (!wp_next_scheduled('cron_wc_clean_cart')) {
    wp_schedule_event( time(), 'daily', 'cron_wc_clean_cart' );
}

add_action ( 'cron_wc_clean_cart', 'wc_clean_session_cart' );
function wc_clean_session_cart() {
    global  $wpdb;

    $wpdb->query( "TRUNCATE {$wpdb->prefix}woocommerce_sessions" );
    $wpdb->query( "DELETE FROM {$wpdb->usermeta} WHERE meta_key='_woocommerce_persistent_cart_" . get_current_blog_id() . "';" );
    wp_cache_flush();
}
对于瞬态,其在wc中的功能是:

wc_delete_expired_transients()

该插件可以从WooCommerce 2.4版和更早版本中删除过时的会话,而WP Optimize不提供这些功能。我有18816次这样的争吵。非常感谢。