カート内の製品の在庫状況に基づいてカート内の推定納期を出力しようとしています。WooCommerceカート商品在庫に基づいて納期の予定範囲を表示
私はもう少し成功しましたが、今は固まっています。
これまでに書いたのはこれです。それは今、私は推定日を追加しようとしていますが、ここで私はここでは、日付の出力を定義する必要が
function lieferzeit() {
global $woocommerce;
$cart_items = $woocommerce->cart->get_cart();
foreach ($cart_items as $variation) {
$variation_id = $variation['variation_id'];
$variation_obj = new WC_Product_variation($variation_id);
$stock = $variation_obj->get_stock_quantity();
}
for ($i=0; $i < count($stock) ; $i++) {
echo "Voraussichtliche Lieferung Date! ";
}
}
add_filter ('woocommerce_cart_collaterals', 'lieferzeit');
こだわっていますfunction.phpに
function lieferzeit() {
global $woocommerce;
$cart_items = $woocommerce->cart->get_cart();
foreach ($cart_items as $variation) {
$variation_id = $variation['variation_id'];
$variation_obj = new WC_Product_variation($variation_id);
$stock = $variation_obj->get_stock_quantity();
}
echo $stock; //outputs the in stock amount successfully
}
add_filter ('woocommerce_cart_collaterals', 'lieferzeit');
を行きます。今日の+1日から今日+4日まで。しかし、私はそれをどのように管理するか考えていません。 最高の出力は次の形式になります。
配送予定金金額14.7 - 水19.7
for ($i=0; $i < count($stock) ; $i++) {
に行くための正しい方法であれば私もSHUREておりません。
私は2種類の製品を持っていますが、1〜4日以内に発送可能で、もう1回は14〜21日以内に発送可能です。今は2番目の問題です。両方のタイプがカート内にある場合は、より高い出荷時間を選択する必要があります。
アイデアはありますか?
更新:
コードは、カート内の各アイテムの在庫数を確認してください。 すべての品目の在庫数が0より大きい場合は、出荷予定日を1〜4営業日の日付として返す必要があります。
在庫数が0以下のカートに1つのアイテムがある場合は、日付として14 - 21営業日の見積もり出荷時間をエコーする必要があります。カート内の他のすべての商品の在庫数が0より大きい場合でも、
金曜日までの営業日は月曜日までです。コードが休日を認識する場合は非常にきれいです。クリスマス、新年など。LoicTheAztecからソリューションは完璧に動作し
おかげ
。今私はそれにいくつかのオプションを追加しようとしました。
function lieferzeit()
の出力が管理者の注文の詳細ページに表示されるといいでしょう。サイドバーにカスタム管理パネルを作成するに 私は、これは、これまで作品とOrder [カスタム]タブは管理者ページにあり
add_action('add_meta_boxes', 'add_meta_boxes');
function add_meta_boxes()
{
add_meta_box(
'woocommerce-order-my-custom',
__('Order Custom'),
'order_my_custom',
'shop_order',
'side',
'default'
);
}
function order_my_custom()
{
echo $lieferzeit;
}
を見つけました。今私はfunction lieferzeit()
の出力を変数に格納しようとしました。
$from = str_replace($days_en, $days_ge, $from);
$to = str_replace($days_en, $days_ge, $to);
$lieferzeit = array($from, $to);
しかし、function add_meta_boxes()
とfunction order_my_custom()
doen'tは変数$lieferzeit
の何も知らないようです。
function lieferzeit()
の出力を保存して呼び出す別の方法はありますか?
動作します。 Stackoverflowは少し混沌としています:) 私は単体製品と可変製品の両方を使用しています。しかし、あなたのソリューションは両方のタイプで非常にうまく機能しています! – Max
**シンプルで変動のある製品在庫に関して、私のコード**を更新しました。** **すぐに使えるはずです。* ... *在庫ステータス 'if($ product_obj-> get_stock_status()== 'instock'){あなたが助けてくれてありがとうございます! – LoicTheAztec