从产品变体标题中删除属性值并将它们显示在单独的行中
Remove attribute values from product variation title and show them on separate rows
我有一个结帐页面,我想:
- 从产品变体标题项中删除选定的产品属性值。
- 也从项目标题中删除数量。
- 在不同的行上显示此产品变体项目的不同产品属性值,例如尺寸、颜色和数量。
我想在我的结帐页面上显示:
Aria Sport Shorts (the product title)
Color: Dusty Pink
Size: Small
QTY: 1
而不是这个:
可能吗?我应该从哪里开始让它成为现实?
已更新
1) 自 WooCommerce 3+ 起,要从产品变体标题中删除属性值并将它们显示在单独的行中,将需要使用这 2 个专用的简单挂钩(在结帐页面中)。
- 正在从产品变体标题中删除属性值:
add_filter( 'woocommerce_product_variation_title_include_attributes', 'variation_title_not_include_attributes' );
function variation_title_not_include_attributes( $boolean ){
if ( ! is_cart() )
$boolean = false;
return $boolean;
}
- 在单独的行中显示产品变体属性标签和值:
add_filter( 'woocommerce_is_attribute_in_product_name', 'remove_attribute_in_product_name' );
function remove_attribute_in_product_name( $boolean){
if ( ! is_cart() )
$boolean = false;
return $boolean;
}
2) 结帐页面 - 从产品标题中删除数量并将其重新添加到单独的行中。
- 从产品标题中删除数量:
add_filter( 'woocommerce_checkout_cart_item_quantity', 'remove_product_variation_qty_from_title', 10, 3 );
function remove_product_variation_qty_from_title( $quantity_html, $cart_item, $cart_item_key ){
if ( $cart_item['data']->is_type('variation') && is_checkout() )
$quantity_html = '';
return $quantity_html;
}
- 在单独的行中添加回购物车商品数量:
add_filter( 'woocommerce_get_item_data', 'filter_get_item_data', 10, 2 );
function filter_get_item_data( $item_data, $cart_item ) {
if ( $cart_item['data']->is_type('variation') && is_checkout() )
$item_data[] = array(
'key' => __('QTY'),
'display' => $cart_item['quantity']
);
return $item_data;
}
代码进入您的活动 child 主题(或主题)的 function.php 文件或任何插件文件。
在 Woocommerce 版本 3+ 中测试并有效。 您可能需要进行一些样式更改……
我有一个结帐页面,我想:
- 从产品变体标题项中删除选定的产品属性值。
- 也从项目标题中删除数量。
- 在不同的行上显示此产品变体项目的不同产品属性值,例如尺寸、颜色和数量。
我想在我的结帐页面上显示:
Aria Sport Shorts (the product title)
Color: Dusty Pink
Size: Small
QTY: 1
而不是这个:
可能吗?我应该从哪里开始让它成为现实?
已更新
1) 自 WooCommerce 3+ 起,要从产品变体标题中删除属性值并将它们显示在单独的行中,将需要使用这 2 个专用的简单挂钩(在结帐页面中)。
- 正在从产品变体标题中删除属性值:
add_filter( 'woocommerce_product_variation_title_include_attributes', 'variation_title_not_include_attributes' );
function variation_title_not_include_attributes( $boolean ){
if ( ! is_cart() )
$boolean = false;
return $boolean;
}
- 在单独的行中显示产品变体属性标签和值:
add_filter( 'woocommerce_is_attribute_in_product_name', 'remove_attribute_in_product_name' );
function remove_attribute_in_product_name( $boolean){
if ( ! is_cart() )
$boolean = false;
return $boolean;
}
2) 结帐页面 - 从产品标题中删除数量并将其重新添加到单独的行中。
- 从产品标题中删除数量:
add_filter( 'woocommerce_checkout_cart_item_quantity', 'remove_product_variation_qty_from_title', 10, 3 );
function remove_product_variation_qty_from_title( $quantity_html, $cart_item, $cart_item_key ){
if ( $cart_item['data']->is_type('variation') && is_checkout() )
$quantity_html = '';
return $quantity_html;
}
- 在单独的行中添加回购物车商品数量:
add_filter( 'woocommerce_get_item_data', 'filter_get_item_data', 10, 2 );
function filter_get_item_data( $item_data, $cart_item ) {
if ( $cart_item['data']->is_type('variation') && is_checkout() )
$item_data[] = array(
'key' => __('QTY'),
'display' => $cart_item['quantity']
);
return $item_data;
}
代码进入您的活动 child 主题(或主题)的 function.php 文件或任何插件文件。
在 Woocommerce 版本 3+ 中测试并有效。 您可能需要进行一些样式更改……