高级自定义字段 - 在完成的电子邮件通知中获取字段值
Advanced custom fields - Getting the fields values in completed email notification
我使用 Advanced Custom Fields (ACF) 插件在 WooCommerce 订单页面中添加了一些字段作为跟踪信息。本质上,我希望管理员填写此信息,一旦他们的订单被标记为完成,它将通过完整的电子邮件发送给客户。
有谁知道如何获取 ACF 值?
下面是我的 customer-completed-order.php
文件中的代码。显然是不行的。
$order = new WC_Order($order_id);
//set tracking variables from advanced custom fields plugin
$tracking = get_field('tracking-code', $order);
$carrier = get_field('carrier-name', $order);
$date = get_field('pickup_date', $order);
<p>Your order has been picked up by <?php echo $carrier; ?> on <?php echo $date; ?>. Your tracking code is <?php echo $tracking; ?>.</p>
您的问题是您必须以这种方式使用 $order_id 而不是订单对象:
//set tracking variables from advanced custom fields plugin
$tracking = get_field('tracking-code', $order_id);
$carrier = get_field('carrier-name', $order_id);
$date = get_field('pickup_date', $order_id);
?>
<p>Your order has been picked up by <?php echo $carrier; ?> on <?php echo $date; ?>. Your tracking code is <?php echo $tracking; ?>.</p>
这应该可行,您不需要在代码中获取 $order 对象的实例。
参考:<?php $field = get_field($field_name, $post_id, $format_value); ?>
我使用 Advanced Custom Fields (ACF) 插件在 WooCommerce 订单页面中添加了一些字段作为跟踪信息。本质上,我希望管理员填写此信息,一旦他们的订单被标记为完成,它将通过完整的电子邮件发送给客户。
有谁知道如何获取 ACF 值?
下面是我的 customer-completed-order.php
文件中的代码。显然是不行的。
$order = new WC_Order($order_id);
//set tracking variables from advanced custom fields plugin
$tracking = get_field('tracking-code', $order);
$carrier = get_field('carrier-name', $order);
$date = get_field('pickup_date', $order);
<p>Your order has been picked up by <?php echo $carrier; ?> on <?php echo $date; ?>. Your tracking code is <?php echo $tracking; ?>.</p>
您的问题是您必须以这种方式使用 $order_id 而不是订单对象:
//set tracking variables from advanced custom fields plugin
$tracking = get_field('tracking-code', $order_id);
$carrier = get_field('carrier-name', $order_id);
$date = get_field('pickup_date', $order_id);
?>
<p>Your order has been picked up by <?php echo $carrier; ?> on <?php echo $date; ?>. Your tracking code is <?php echo $tracking; ?>.</p>
这应该可行,您不需要在代码中获取 $order 对象的实例。
参考:<?php $field = get_field($field_name, $post_id, $format_value); ?>