我正在尝试构建一个插件,为WooCommerce订单添加一些自定义数据。
基本上我是从自定义按钮加载特定产品页面,其中我有一个url变量集(& my_post_var = {INTEGER})。然后在产品页面中处理此var,显示WordPress中可用的一些特定信息,并按预期工作。
从这里开始,按下添加到购物车后,一些自定义数据被推送到购物车会话。 AJAX jQuery和PHP回调都正确运行,并且使用PHP $ _SESSION变量也正确填充了jQuery响应。
问题出现之后,当显示购物车页面时,显示的数据是上一个& my_post_var = {INTEGER} 值中的数据,而不是最后传递的价值。
我没有使用任何缓存插件,这是一个本地开发wordpress安装。
有人可以帮我解决这里可能出错的问题吗?
这是代码中可能更相关的部分:
UPDATE `banners` SET `end` = DATE_ADD(`start`, INTERVAL 1 WEEK) WHERE `id` = 93
UPDATE `banners` SET `end` = DATE_ADD(`start`, INTERVAL 7 DAY) WHERE `id` = 93
UPDATE `banners` SET `end` = DATE_ADD(`start`, INTERVAL 168 HOUR) WHERE `id` = 93
非常感谢
答案 0 :(得分:0)
我认为我找到了一种对此进行排序的方法,如果结果不稳定,我会回到这个问题。
基本上我正在进行两个不同的 session_start()调用,一个在ajax回调中(如OP中所示),另一个在 woocommerce_add_cart_item_data 过滤器函数内。
在 __ construct()启动后立即删除这些调用并通过单个调用替换它们使得它可以正常工作,即使我不知道是否有任何调用这个有重要的警告。