gpt4 book ai didi

php - 在 WooCommerce 电子邮件模板上使用的短代码中传递订单 ID

转载 作者:行者123 更新时间:2023-12-04 08:21:03 25 4
gpt4 key购买 nike

我无法通过短代码在自定义 woocommerce 电子邮件模板中获取订单 ID。它确实直接工作。
工作代码在 admin-new-order.php模板:

echo $order->get_id();
我下面的短代码不起作用,我不知道为什么。我的目标是最终通过短代码将诸如“Hello Firstname”之类的文本变量插入到电子邮件模板中。
function custom_first_name($order, $order_id){
global $woocommerce, $post;
global $order_id, $order;
$order = new WC_Order( $order_id );
return $order->get_id();
}
add_shortcode( 'custom-woocommerce-name' , 'custom_first_name' );
我通过以下代码将短代码添加到 admin-new-order.php 模板中:
echo do_shortcode('[custom-woocommerce-name]');
$order->get_id()并且短代码都应该输出订单ID。

最佳答案

获取 订单编号 来自 admin-new-order.php 中使用的简码模板,您将不得不使用以下函数代码:

function wc_custom_first_name( $atts ){
// Extract shortcode attributes
extract( shortcode_atts( array(
'id' => '',
), $atts, 'wc-custom-name' ) );

return $id; // return order id
}
add_shortcode( 'wc-custom-name' , 'wc_custom_first_name' );
代码位于事件子主题(或事件主题)的 functions.php 文件中。
那么你将在 admin-new-order.php 中使用以下内容模板文件:
echo do_shortcode("[wc-custom-name id='{$order->get_id()}']");
测试和工作。

Note:

The available arguments variables passed to admin-new-order.php template are:

  • $order
  • $email_heading
  • $additional_content
  • $sent_to_admin
  • $plain_text
  • $email

关于php - 在 WooCommerce 电子邮件模板上使用的短代码中传递订单 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65499203/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com