wordpress - 无法执行 woocommerce_order_status_completed 挂钩
问题描述
下订单时WordPresswoocommerce_order_status_completed
挂钩未执行。我在functions.php
文件中添加了以下代码以console.log
订购 id:
add_action('woocommerce_order_status_completed', 'console_to_order_items_on_competed_status', 10, 1);
function console_to_order_items_on_competed_status( $order_id ){
?>
<script type="text/javascript">
console.log('order id: "<?php echo $order_id ?>"');
</script>
<?php
}
上面的代码没有执行。我还尝试添加do_action
如下:
do_action('woocommerce_order_status_completed', 'console_to_order_items_on_competed_status')
但一点运气都没有。请帮我解决这个问题。提前致谢。
解决方案
如果你想在订单上执行功能你可以使用这个钩子:
add_action( 'woocommerce_new_order', 'your_order_details', 1, 1 );
function your_order_details($order_id){ ?>
<script type="text/javascript">
console.log('order id: "<?php echo $order_id ?>"');
</script>
<?php }
请记住不要在这些方法中放置任何 $woocommerce->cart->empty_cart() 语句,因为它会删除购物车中的项目并使其他结帐方法无法继续进行。
试试看,如果您有任何疑问,请告诉我。
推荐阅读
- java - JavaFx:带有 CustomTableHeaderRow 的 CustomTableSkin
- spring-boot - 为什么我从 application.properties 文件中获得的属性值在春季启动时始终为空?
- kubernetes - 无法访问 Kubernetes Dashboard
- ubuntu - 由于不必要的文件夹太多,MSBuild 无法将文件复制到输出文件夹
- php - 在后台codeigniter中调用函数
- mysql - 使用随机数据填充表时如何避免插入具有重复主键值的元组
- apache - Apache 作为代理使用相同的 URL 和不同应用程序的子路由
- azure - 使用 Azure DevOps 将 Umbraco v8 应用程序部署到 Azure
- r - 具有连续变量的有序逻辑回归 - 缩放
- mysql - InnoDB 行操作的增加