WooCommerce yönetici ürün listesinde "is_in_stock" sütunundaki içeriği geçersiz kılın
WooCommerce yönetici ürün listesindeki "is_in_stock" sütunundaki içeriği geçersiz kılmaya çalışıyorum.
Bunun için şu anda kullanıyorum:
<?php
add_action('manage_product_posts_custom_column', 'stock_override' );
function stock_override($column_name){ global $post;
$product = wc_get_product($post->ID);
if( $product->is_type('variable')){ if ($column_name == 'is_in_stock') {
echo 'own text';
}
}
}
?>
Ancak bu, varsayılan içeriği geçersiz kılmaz, ancak metnimi buna ekler. Varsayılan içerik stok durumudur onstock
, backorder
ya out of stock
.
Özel bir ürün türü oluşturdum ve ürün türü is_in_stock
değişkene eşitse sütundaki içeriği geçersiz kılmak istiyorum . Eşit değilse, WooCommerce'den varsayılanı yankı yapın.
Tüm sütunu kaldırabilir ve kendi sütunumu ekleyebilirim, ancak ürün türü eşit değilse varsayılan içeriğim yok.
Bana kim biraz yardım edebilir?
Yanıtlar
Varsayılan sütunu silmenize ve yenisiyle değiştirmenize gerek yoktur, yalnızca nesneye woocommerce_admin_stock_html
erişiminiz olan filtreyi kullanabilirsiniz $product
.
Bu şekilde kendi metninizi / durumlarınızı mevcut sütuna ekleyebilirsiniz.
Böylece şunları elde edersiniz:
// Admin product list: is_in_stock
function filter_woocommerce_admin_stock_html( $stock_html, $product ) { // Condition if ( $product->is_type('variable') ) {
$stock_html = '<mark class="someclass" style="background:transparent none; color:#33ccff; font-weight:700; line-height:1;">' . __( 'My text', 'woocommerce' ) . '</mark>'; } return $stock_html;
}
add_filter( 'woocommerce_admin_stock_html', 'filter_woocommerce_admin_stock_html', 10, 2 );