WooCommerce 订单状态自动更改的问题

时间:2021-06-28 11:18:24

标签: php wordpress woocommerce hook-woocommerce

我在使用某个函数时遇到问题。

我希望在店铺下单后,如果订单值为零,订单状态会自动变为已完成。

谁能给个提示?

我正在使用 Change order status for virtual, downloadable, free or backorder products in WooCommerce 答案代码,但这不是我想要的。

1 个答案:

答案 0 :(得分:1)

你没有告诉我们太多关于你的问题。不过,您可以使用 woocommerce_checkout_order_created action

像这样的片段可能会对您有所帮助。

function adam_check_order( $order ) {
    /* examine $order for the criterion you want, then call your function */
}
add_action( 'woocommerce_checkout_order_creation_action',  'adam_check_order' );  

一般来说,让这类东西发挥作用的方式是

  1. 安装 WordPress 的 Code Snippets 插件或其他快速编辑和运行网站代码的方式。
  2. 将您的网站放入 WordPress debugging mode
  3. 查找在工作流程中的适当点调用的 WordPressWoocommerce hook(过滤器​​或操作)。找到正确的钩子可能具有挑战性;他们没有很好的记录。我使用 ctrl-f 来搜索列出挂钩的网页。 (如果您使用过滤器钩子,请务必返回传递给您的过滤对象。)
  4. 像我的例子一样编写一段代码。
  5. print_r() 调用放入您的代码段中。当调用钩子时,这将使 php-ish 内容显示在您的页面中,并向您显示传递给您的数据对象(在您的情况下为 $order)的内容。
  6. 开始工作。
  7. 删除 print_r() 调用并使站点退出调试模式。