【发布时间】:2018-12-28 15:41:32
【问题描述】:
我正在尝试根据库存数量和库存状态向变体产品添加自定义消息。
到目前为止,我得到了这个:
function load_variation_settings_fields( $variation_data, $product, $variation ) {
// Display shipping delay text when stock quantity exist
if( $variation->get_stock_quantity() > 0 )
$variation_data['text_field'] = __('<p class="stock in-stock">Stock: <span>På lager</span><br>Delivery: <span>2-12 hverdage</span></p>');
else $variation_data['text_field'] = __('<p class="stock in-stock">Stock: <span>Out of stock</span><br>Delivery: <span>4-6 weeks</span></p>');
return $variation_data;
}
它可以工作,并根据每个变体的数量显示消息,但我需要它仅适用于一种类型的库存状态(自定义状态)。 我需要为不同的变体库存状态显示不同的消息。 这是我尝试过的:
function load_variation_settings_fields( $variation_data, $product, $variation ) {
// Display shipping delay text when stock quantity exist
if( $variation->get_stock_quantity() > 0 && ($stockstatus == 'customstatus'))
$variation_data['text_field'] = __('<p class="stock in-stock">Stock: <span>In stock</span><br>Delivery: <span>2-12 days</span></p>');
elseif ( ($stockstatus == 'customstatus') )
$variation_data['text_field'] = __('<p class="stock in-stock">Stock: <span>Out of stock</span><br>Delivery: <span>4-6 weeks</span></p>');
return $variation_data;
}
在variation.php文件中显示如下:
<div class="woocommerce-variation-custom-text-field">{{{ data.variation.text_field }}}</div>
感谢任何帮助或指出正确的方向。
编辑: 这是我的最新尝试,因为我的自定义库存状态存储在“_stock_status”元值中。不过还是不行。
function load_variation_settings_fields( $variation_data, $product, $variation ) {
$stockstatus = $product->get_attribute( '_stock_status' );
if( ($stockstatus == 'bestillingsvare') ) {
// Display shipping delay text when stock quantity exist
if( $variation->get_stock_quantity() > 0 )
$variation_data['text_field'] = __('<p class="stock in-stock">Stock: <span>På lager</span><br>Delivery: <span>2-12 hverdage</span></p>');
else $variation_data['text_field'] = __('<p class="stock in-stock">Stock: <span>Out of stock</span><br>Delivery: <span>4-6 weeks</span></p>');
}
return $variation_data;
}
【问题讨论】:
标签: php wordpress woocommerce shipping variations