我用ACF插件创建了一个高级定制字段,以便在Woocommerce产品编辑页面上添加附加信息。这是一个区分T恤模板的副标题。我能够使价值出现在产品页面前端,但我需要这些信息出现在订单细节和所有电子邮件中,也许作为订单元。提前谢了。
请在fucntions.php文件中尝试下面的代码..
add_action( 'woocommerce_before_add_to_cart_button', 'add_custom_field', 0 );
function add_custom_field() {
global $product; // Changed this
// Added this too (compatibility with WC +3)
$product_id = method_exists( $product, 'get_id' ) ? $product->get_id() : $product->id;
echo "<div class='produto-informacoes-complementares'>";
echo get_field( 'woo_title', $product_id );
echo "</div>";
return true;
}
add_filter( 'woocommerce_add_cart_item_data', 'save_my_custom_product_field', 10, 2 );
function save_my_custom_product_field( $cart_item_data, $product_id ) {
$custom_field_value = get_field( 'woo_title', $product_id, true );
if( !empty( $custom_field_value ) )
{
$cart_item_data['woo_title'] = $custom_field_value;
// below statement make sure every add to cart action as unique line item
$cart_item_data['unique_key'] = md5( microtime().rand() );
}
return $cart_item_data;
}
add_filter( 'woocommerce_get_item_data', 'render_meta_on_cart_and_checkout', 10, 2 );
function render_meta_on_cart_and_checkout( $cart_data, $cart_item ) {
$custom_items = array();
// Woo 2.4.2 updates
if( !empty( $cart_data ) ) {
$custom_items = $cart_data;
}
if( isset( $cart_item['woo_title'] ) ) {
$custom_items[] = array( "name" => "ACF value:", "value" => $cart_item['woo_title'] );
}
return $custom_items;
}
function add_order_item_meta_acf( $item_id, $values ) {
wc_add_order_item_meta( $item_id, 'acf', $values [ 'woo_title' ] );
}
add_action( 'woocommerce_add_order_item_meta', 'add_order_item_meta_acf' , 10, 2);
在订单表之后显示订单详细信息页面中的Acf值
add_action ('woocommerce_order_details_after_order_table', 'order_detail_page', 20);
function order_detail_page($order_id) {
// global $post;
// $order = wc_get_order( $post->ID );
$order = new WC_Order( $order_id );
$items = $order->get_items();
foreach ( $items as $item ) {
$product_id = $item['product_id'];
}
if (get_field('woo_title', $product_id)) {
?>
<p class="WooCommerce">ACF value: <?php the_field('woo_title', $product_id); ?><p>
<?php
}
}```
我正在搜索和尝试它2天没有成功,请帮助。 我想筛选woocommerce订单,以便根据产品属性将其他详细信息从db添加到订单详细信息页面,但我找不到适合此任务的woocommerce操作/筛选器挂钩。这里假设变量; 如果,那么我需要将自定义数据从数据库添加到订单详细信息页面。 注意:我不想添加额外的元框,而是想更改订单明细表: 将默认产品映像替换为存储在数据库和中的映像, 在产品名称下面添加包含自
我试图自定义我的Woocommerce电子邮件,我已经为它创建了一个html模板,它已经可以工作了。 我的问题是,它没有显示像这样的WooCommerce变量: 这样 或者这样 我总是这样说: 下面是HTML代码的一个片段: 所以它是一个普通的html文件,在我需要它们的地方带有这个php变量。我把html文件放进了Woocommerce 我是否必须将其全部打包到一个php文件中,或者如何让变量如
我正在使用WordPress4.8.1和bridge主题 关于从新订单模板电子邮件中删除价格,我面临一些问题 我想删除价格列,但是我删除了总计和小计,但没有得到任何东西来删除价格列,因为产品正在浏览文件。 我发现这是来自这个代码: 在电子邮件订单详细信息中。php模板,我已经从woocommerce模板文件夹复制到我的子主题。 但是,如何定制这个钩子“wc_get_email_order_item
好的,基本上我们在我们的WooCommerce商店中使用ACF创建了一个自定义字段,以便为特定的产品添加一个“发货延迟”通知。
我正在使用一个自定义的结帐字段,在我的woocommerce商店的结帐页面上为我的客户提供一个“发送到业务地址”选项。大部分代码工作正常,但我无法显示他们是否选中了后端管理订单详细信息中的复选框。 我已经添加了一个自定义结账字段到我的WooCommerce商店,并将数据保存到订单元: 这里是我试图在管理命令部分显示这些数据的地方。我已经尽可能地关注了前面关于这方面的话题,但没有任何效果。 这个问题
null 我希望能够从数组中获取某些元值,例如、、、、等。 这个PHP代码段将添加一个字段的订单电子邮件,但我如何编辑这一点,我可以让它显示一些元从数组? 对于特定的WooCommerce订单,我使用 这表明: