WooCommerce购物车最初未显示产品

时间:2019-08-07 作者:Kenton de Jong

我正在与一位客户合作创建WooCommerce购物网站。然而,由于某些原因,在人们将物品添加到购物车之后,这些物品实际添加到购物车大约需要30秒。

我已经确定WooCommerce会话没有立即设置。产品正在保存在数据库中,但会话在不久之后才能访问它们。

我创建了一个快捷代码来打印会话,以便查看正在发生的事情。此脚本不相关,但如下所示:

function test_func( $atts ){
    $customer = @WC()->session;
    return print_r($customer);
}
add_shortcode( \'test\', \'test_func\' );
这是添加产品后购物车的屏幕截图。请注意它如何显示“您的购物车当前为空”以及\\u customer id:受保护的值:

Sessions print out that doesn't match anything

以下是phpMyAdmin的屏幕截图,显示了正在存储的会话:

PHPMyadmin screen shot of sessions

在第一次截屏32秒后,我刷新了页面,并显示了与\\u customer\\u id匹配的页面。

Session print out that does match

所以我的问题是:为什么会有30秒的延迟,我如何修复它?

我已经尝试将WooCommerce改为直接结账(不起作用),我使用了来自BusinessBloomer.com 每个人都链接到的。

我正在运行WooCommerce v.3.6.5,运行WordPress 5.2.2,PHP版本7.0.33。我的主人是戈达迪。

1 个回复
最合适的回答,由SO网友:Michael 整理而成

我会尝试将此站点复制到临时区域。

然后检查并停用除Woo Commerce之外的所有插件。除了Woo Commerce和您的主题之外,其他所有功能都已禁用,请尝试将项目添加到您的购物车中。查看将物品添加到购物车时是否有延迟。

如果没有延迟,慢慢地一次激活一个插件,直到找到导致问题的插件。如果只有您的主题和Woo Commerce出现延迟,请尝试切换到其他主题。

通过这种方式,您可以慢慢缩小范围,以确定故障所在。

相关推荐

将服务器移到负载均衡器后面后的WP-cli PHP通知

在设置了SSL终止的Amazon弹性负载平衡器之后,我在站点上遇到了混合内容错误,直到我将以下行添加到wp-config.php.if (strpos($_SERVER[\'HTTP_X_FORWARDED_PROTO\'], \'https\') !== false) $_SERVER[\'HTTPS\']=\'on\'; 虽然这修复了混合内容错误,但在使用wp cli后,现在我收到了以下PHP注意事项:PHP Notice: Undefined index: HTTP_X_FORW