gpt4 book ai didi

php - 如何在新订单电子邮件中显示 WooCommerce 自定义产品元数据?

转载 作者:行者123 更新时间:2023-12-04 08:55:51 26 4
gpt4 key购买 nike

我目前正在成功地为单个产品保存自定义帖子元,如下所示:

    function save_payment_terms( $product_id ) {

if ( isset( $_POST['payment_terms'] ) ) {
update_post_meta( $product_id, 'payment_terms', is_numeric( $_POST['payment_terms'] ) ? absint( wp_unslash( $_POST['payment_terms'] ) ) : '1' );
}

}
我将如何将该自定义帖子元添加到新的订单确认电子邮件中?我尝试了以下钩子(Hook)但没有成功: woocommerce_email_order_metawoocommerce_order_item_meta_start .最新的迭代如下所示:
add_action('woocommerce_order_item_meta_start', 'email_confirmation_display_order_items', 10, 4);

function email_confirmation_display_order_items($item_id, $item, $order, $plain_text) {
echo '<div>Terms: '. wc_get_order_item_meta( $item_id, 'payment_terms') .'</div>';

}
导致:
enter image description here
做一个 var_dumpwc_get_order_item_meta ,我得到: ../snippet-ops.php(446) : eval()'d code:7:boolean false任何人都可以对此有所了解吗?

最佳答案

请尝试以下操作:

add_action( 'woocommerce_order_item_meta_start', 'email_confirmation_display_order_items', 10, 3 );
function email_confirmation_display_order_items( $item_id, $item, $order ) {
// On email notifications for line items
if ( ! is_wc_endpoint_url() && $item->is_type('line_item') ) {
$payment_terms = get_post_meta( $item->get_product_id(), 'payment_terms', true );

if ( ! empty($payment_terms) ) {
printf( '<div>' . __("Terms: %s", "woocommerce") . '</div>', $payment_terms );
}
}
}
代码在您的事件子主题(或事件主题)的functions.php 文件中。它应该有效。
相关: WooCommerce Display avanced custom fields (ACF) inside order notification

关于php - 如何在新订单电子邮件中显示 WooCommerce 自定义产品元数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63838330/

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