Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 向电子商务订单电子邮件模板添加自定义字段值_Php_Wordpress_Woocommerce_Advanced Custom Fields_Email Notifications - Fatal编程技术网

Php 向电子商务订单电子邮件模板添加自定义字段值

Php 向电子商务订单电子邮件模板添加自定义字段值,php,wordpress,woocommerce,advanced-custom-fields,email-notifications,Php,Wordpress,Woocommerce,Advanced Custom Fields,Email Notifications,在Woocommerce with Advanced Custom Fields plugin中,我们为产品添加了一个自定义字段,该字段值为每个产品的特定值 现在,我正在尝试将此自定义字段值添加到我们的Woocommerce订单确认电子邮件中 我尝试了以下代码,但没有成功: <?php if ( version_compare( WC_VERSION, '3.0', '<' ) ) { $order_id = int_val( $order->id );

在Woocommerce with Advanced Custom Fields plugin中,我们为产品添加了一个自定义字段,该字段值为每个产品的特定值

现在,我正在尝试将此自定义字段值添加到我们的Woocommerce订单确认电子邮件中

我尝试了以下代码,但没有成功:

<?php
    if ( version_compare( WC_VERSION, '3.0', '<' ) ) {
        $order_id = int_val( $order->id ); // Older than 3.0
    } else {
        $order_id = int_val( $order->get_id() ); // 3.0+
    }

    $inst1 = get_field(‘how1’, $order_id );

    if( $inst1 ){
        echo '<p>' . $inst1 . '</p>';
    }
?> with Advanced Custom Fields plugin
带有高级自定义字段插件

由于您的自定义字段特定于“产品”帖子类型(但不是“订单”帖子类型),您需要首先获取订单项目获取产品ID,您应该使用ACF
获取字段()
函数,方法如下:

<?php

    foreach ( $order->get_items() as $item ) {
        // Get the product ID
        if ( version_compare( WC_VERSION, '3.0', '<' ) ) {
            $product_id = $item['product_id']; // Older than 3.0
        } else {
            $product_id = $item->get_product_id(); // 3.0+
        }

        $inst1 = get_field( 'how1', $product_id );

        if( $inst1 ){
            echo '<p>' . $inst1 . '</p>';
        }
    }

<?

由于您的自定义字段特定于“产品”post类型(而不是“订单”post类型),您需要首先获取订单项目才能获取产品ID,您应该使用ACF
get_field()
函数,方法如下:

<?php

    foreach ( $order->get_items() as $item ) {
        // Get the product ID
        if ( version_compare( WC_VERSION, '3.0', '<' ) ) {
            $product_id = $item['product_id']; // Older than 3.0
        } else {
            $product_id = $item->get_product_id(); // 3.0+
        }

        $inst1 = get_field( 'how1', $product_id );

        if( $inst1 ){
            echo '<p>' . $inst1 . '</p>';
        }
    }

<?

欢迎来到堆栈溢出。您正在使用Wordpress函数获取WooCommerce字段,我99%确定这就是问题所在。您需要使用函数或类属性来获取自定义字段。我不知道自定义字段插件是如何运行的,但我猜您需要使用WC_产品类获取WooCommerce产品的属性。欢迎使用Stack Overflow。您正在使用Wordpress函数获取WooCommerce字段,我99%确定这就是问题所在。您需要使用函数或类属性来获取自定义字段。我不知道自定义字段插件是如何运行的,但我猜您需要使用WC_产品类获取WooCommerce产品的属性。