正如我在其他文章中所说的那样,WooCommerce是一个更强大,更灵活的模块,能够将WordPress变成一个 一开始的理想在线商店。
内容
对于适度的在线商店,可以将WoCommerce滚动 “共享托管”,如果所使用的主题不会消耗很多资源,并且不滥用其他模块(插件),则能够耐受易于耐受和5,000个产品 / 100订单。
源代码的优化 从主题(WP主题),模块(WP插件)和 优化数据库 我们还必须采取两个方面。
我注意到前几天,随着谦虚维度的在线商店开始 在专用服务器上消耗许多RAM和CPU资源 慷慨的。这种大量资源消耗导致默认 “加载” 服务器上的增加,也是为晚上商店收费的大量时间。
当我们注意到Web服务器上的不合理的大负载时,在采取任何措施之前,最好研究原因。
在数据库中,我注意到表 “wp_woocommerce_sessions
” 这很大。超过6 GB。来自数据库的表格,通常总共不超过100 MB。

这个este wp_woocommerce_ssionals?
从他的名字中我们可以感觉到 “wp_woocommerce_sessions
” 包含PHP会议(PHP会议)。
这些会话是网站(或Web机器人)上用户的操作,并且通常通过cookie到达数据库。 在WP_WooCommerce_Sessions中,是用户在购物车,优惠券,运输费,客户数据以及与产品订单过程有关的许多其他信息中存储的数据。
这些会话甚至是在网站中注册的用户,通常都必须自动删除并自动删除。
不幸的是,这些会话已被删除并不总是发生,在某些情况下,它们仍在WP_WooCommerce_Sessions中永久存储,这使得表达到了很大的音量。
如何擦拭桌子 wp_woocommerce_sessions
din sql?
1。我们去 仪表板 → WooCommerce → 地位 → 工具 (TAB)。
2。我们要选择选项 “清晰的客户会议“。小心!删除客户会议涉及删除他们在购物车中放置的所有产品。如果在删除这些会话时是篮子里有产品的客户,它们将消失,并且最终的订单将无法完成。
3。单击 “清除” 并确认操作。

这时桌子 “wp_woocommerce_sessions” 它是空的,因此所有客户购物课程都已删除。
到目前为止,该问题尚未解决。 SQL WP_WOOCommerce_Sessions表将在其中收集数据,默认情况下它将再次获得比例,这是不可取的。
我们如何使客户会议在WooCommerce中永久停止 – wp_woocommerce_sessions
?
我在上面展示了如何清空桌子 “wp_woocommerce_sessions” 从数据库中,但是几天后将收集客户会话后,问题将再次出现。
在WooCommerce 2.5之前,通过cookie捕获客户会话,然后保存在WordPress表中 “wp_options
“。
对于大型商店,这种方法通常导致灾难。 “wp_options” 作为一般选项和设置使用的WordPress的重要表。手动识别和删除存储的客户会话 wp_options
这不是一件容易的事。
WooCommerce的性能不是最好的,并且随着时间的推移可扩展性是一个敏感的一点。
随着2015年WooCommerce 2.5的推出,WooCommerce开发人员推出了一个新的基于WooCommerce的处理和存储系统 WP Sessions Manager。该系统导致了外观 wp_woocommerce_sessions
。用于客户会话的专用表,在数据库中不会与其他表进行交互。在重大错误的情况下,损失应最小。
据我所知,在WooCommerce 2.5之前推出的在线商店,并且随着时间的推移不断更新,在客户会议的自动删除方面遇到一些问题。它很可能是在较新版本的WooCommerce 2.5或WordPress / WooCommerce插件上的错误,该错误尚未跟上更新。
就我而言,这是与文件中添加的函数的冲突 functions.php
主题,哪个 在过期的会话过期后防止自动删除 woocommerce_sessions
。
如果您遇到了这样的问题,则必须仔细研究所有可能的原因。 SQL错误,SQL迫害,CRON作业,与其他插件发生冲突,最后但并非最不重要的一点检查您的代码随时间的变化。
我看到WooCommerce仅提供29美元的插件,能够管理客户的插件。 “清晰的购物车和woocommerce会议“。当然,除了对会话的编程删除之外,该模块还具有几种可能有帮助的工具。
一个更简单的选择的选择 编程删除a “woocommerce_sessions
” 一天间隔,是带有下一个代码的位移 functions.php
:
// 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();
}
如果您需要帮助或有其他解决方案,请发表评论。
我无法删除数据重量为500MB,我对擦除的分钟有1000MB的限制,一切都完全填充了…一些解决方案?