Woocommerce 我正在寻找账单地址和已收到订单的电子邮件挂钩
Woocommerce I am looking for billing address and order-received email hooks
我必须在我的 woocommerce 网站上进行两个自定义。
我需要知道两个主要的钩子。有人在那里请帮助我!
在收到订单的页面上将自定义字段值显示为账单地址。(我在结帐页面上添加了自定义字段。)
也需要将这些值包含到客户的订单接收电子邮件中。
感谢您的光临。
To show custom field in order-received page you have to use
woocommerce_thankyou
hook.
代码如下:
// define the woocommerce_thankyou callback
function action_woocommerce_thankyou($order_id)
{
$my_custom_field = get_post_meta($order_id, '_billing_my_field', TRUE);
}
// add the action
add_action('woocommerce_thankyou', 'action_woocommerce_thankyou', 10, 1);
已更新 本节在 post 作者评论后
To add custom billing fields in WooCommerce email you have to use
woocommerce_email_customer_details
hook; this will be displayed just
before the customer details.
代码如下:
add_filter('woocommerce_email_customer_details', 'custom_woocommerce_email_order_meta_fields', 10, 3);
function custom_woocommerce_email_order_meta_fields($order, $sent_to_admin, $plain_text)
{
$_billing_my_field = get_post_meta($order->id, '_billing_my_field', true);
if ($plain_text)
{
echo 'My field is ' . $_billing_my_field;
}
else
{
echo '<p>My field is ' . $_billing_my_field . '</p>';
}
}
所有代码都在您的活动子主题(或主题)的 function.php 文件或任何插件文件中。
请注意:
- 我假设您已使用
woocommerce_checkout_fields
挂钩将自定义帐单字段添加为 $fields['billing']['billing_my_field']
。
- 所有代码都经过测试并且功能齐全。
我必须在我的 woocommerce 网站上进行两个自定义。
我需要知道两个主要的钩子。有人在那里请帮助我!
在收到订单的页面上将自定义字段值显示为账单地址。(我在结帐页面上添加了自定义字段。)
也需要将这些值包含到客户的订单接收电子邮件中。
感谢您的光临。
To show custom field in order-received page you have to use
woocommerce_thankyou
hook.
代码如下:
// define the woocommerce_thankyou callback
function action_woocommerce_thankyou($order_id)
{
$my_custom_field = get_post_meta($order_id, '_billing_my_field', TRUE);
}
// add the action
add_action('woocommerce_thankyou', 'action_woocommerce_thankyou', 10, 1);
已更新 本节在 post 作者评论后
To add custom billing fields in WooCommerce email you have to use
woocommerce_email_customer_details
hook; this will be displayed just before the customer details.
代码如下:
add_filter('woocommerce_email_customer_details', 'custom_woocommerce_email_order_meta_fields', 10, 3);
function custom_woocommerce_email_order_meta_fields($order, $sent_to_admin, $plain_text)
{
$_billing_my_field = get_post_meta($order->id, '_billing_my_field', true);
if ($plain_text)
{
echo 'My field is ' . $_billing_my_field;
}
else
{
echo '<p>My field is ' . $_billing_my_field . '</p>';
}
}
所有代码都在您的活动子主题(或主题)的 function.php 文件或任何插件文件中。
请注意:
- 我假设您已使用
woocommerce_checkout_fields
挂钩将自定义帐单字段添加为$fields['billing']['billing_my_field']
。 - 所有代码都经过测试并且功能齐全。