WooCommerce-在表格中显示所有变体的尺寸

时间:2019-03-26 16:23:36

标签: wordpress woocommerce

我需要在产品页面上的表格中显示所有所有产品型号的尺寸。

我已经能够使其中的大多数工作正常,但是有一些问题:

我正在使用$ product_variation-> get_formatted_name()。以显示变体标题,此方法有效,但会提取大量不需要的额外数据。如何格式化数据以显示产品变体的“漂亮名称”?

我用来提取数据的代码如下:

add_action( 'woocommerce_before_add_to_cart_button', 'custom_table_after_single_product' );

function custom_table_after_single_product(){

global $product;

// Only for variable products

if( ! $product->is_type('variable')) return;



$available_variations = $product->get_available_variations();



if( count($available_variations) > 0 ){



$output = '<table>

<thead>

<tr>

<th>'. __( 'Product Dimensions' ) .'</th>

<tr>

<th>'. __( 'Style', 'woocommerce' ) .'</th>

<th>'. __( 'Height', 'woocommerce' ) .'</th>

<th>'. __( 'Width', 'woocommerce' ) .'</th>

<th>'. __( 'Depth', 'woocommerce' ) .'</th>

</tr>

</thead>

<tbody>';



foreach( $available_variations as $variation ){

// Get an instance of the WC_Product_Variation object

$product_variation = wc_get_product($variation['variation_id']);



$sale_price = $product_variation->get_sale_price();

if( empty( $sale_price ) ) $sale_price = __( '<em>(empty)</em>', 'woocommerce' );



$output .= '

<tr>

<td>'. $product_variation->get_formatted_name() .'</td>

<td>'. $product_variation->get_height() .'</td>

<td>'. $product_variation->get_width() .'</td>

<td>'. $product_variation->get_length() .'</td>



</tr>';

}

$output .= '

</tbody>

</table>';



echo $output;

}

}

我现在已切换为使用$product_variation->get_name() .'

这似乎删除了大部分多余的数据。

我认为_name选择器会提取产品的所有属性名称;

例如;

属性1:汽车属性2:小型属性3:福特

使用_name返回:CAR SMALL FORD

我只想显示第二个属性“ SMALL”

如何使用_name仅定位该属性?

0 个答案:

没有答案