У меня есть WooCommerce, и я хочу управлять несколькими пользовательскими статусами акций, такими как> «доставлено за 15 дней», «доставлено за 7 дней».
Сначала я нашел этот код (я не разработчик), который позволил мне отобразить «в наличии» или «нет в наличии» под кнопкой «Добавить в корзину» на странице товара l oop.
//Ajoute "En stock" sous chaque produit
function show_stock() {
global $product;
if ( $product->get_stock_quantity() ) { // if manage stock is enabled
if ( number_format($product->get_stock_quantity(),0,'','') > 0 ) { // if in stock
echo '<div class="remaining" style="color:green;">En stock</div>';
} else {
echo '<div class="remaining" style="color:red;">Rupture</div>';
}
}
}
add_action('woocommerce_after_shop_loop_item','show_stock', 10);
И это хорошо работает.
После некоторых исследований я добавил это
add_action ('woocommerce_before_add_to_cart_form','show_stock');
Для отображения на странице одного продукта и Я сделал исчезнуть с CSS оригинальной "в наличии" один. И это нормально.
Теперь я нашел решение для управления некоторыми пользовательскими сообщениями, которые отображаются в тех же местах. Затем я буду управлять пользовательскими сообщениями со склада с указанным c количеством запаса.
Например, если я поставлю 1000 штук, это вернет мне «Доставка менее 1 месяца», если я поставлю 2000 штук, что вернет мне «Доставка до 7 дней»
Во-первых, мне нужно, чтобы WooCommerce прекратил управлять акциями, так как мое количество акций остается неизменным. Я сниму флажок «Управление запасами» и введу указанное вами c количество запаса, чтобы вернуть мне мое специальное сообщение.
Я вижу в коде предварительного просмотра, чтобы получить условное управление запасами
if ( $product->get_stock_quantity() ) { // if manage stock is enabled
Но теперь мне нужно обратное, то есть условное условие, если управление запасами отключено (снимите отметку)
if ( ! $product->managing_stock()
Так что теперь мой новый код пока отсутствует, но что-то не так, потому что ничего не отображается, если я сниму отметку с управления запасами и положить 1000 в количестве акций
//Ajoute "En stock" sous chaque produit
function show_stock() {
global $product;
if ( $product->get_stock_quantity() ) { // if manage stock is disable
if ( number_format($product->get_stock_quantity(),0,'','') = 1000 ) { // if stock = 1000 return Livraison sous 7 jours
echo '<div class="remaining" style="color:green;">Livraison sous 7 jours</div>';
}
elseif ( number_format($product->get_stock_quantity(),0,'','') = 2000 ) { // if stock = 2000 return Livraison sous 1 mois
echo '<div class="remaining" style="color:#f2cd00;">Livraison sous 1 mois</div>';
}
}
}
add_action('woocommerce_after_shop_loop_item','show_stock', 10);
add_action ('woocommerce_before_add_to_cart_form','show_stock');
Это потому, что, поскольку я не управляю акциями, я не могу их принять, не могу подсчитать количество акций?