sql >> データベース >  >> RDS >> Mysql

WooCommerceで日付範囲のある予約可能な製品の価格データを取得します

    WooCommerce Bookingsの場合、WC_Product_Bookingに必要なものがすべて揃っています。 オブジェクト:

    // Get an instance of the WC_Product object (Here a WC_Product_Booking object)
    $product = wc_get_product( $product_id );
    
    // Get the base price
    $base_price = $product->get_price();
    
    // Get all related protected data in an array
    $product_data = $product->get_data();
    
    // Get the additional pricing data for this bookable product (array)
    $product_pricing = $product_data['pricing'];
    
    // iterating through each pricing row
    foreach($product_pricing as $key => $princing ){
        $pricing_type           = $princing['type'];
        $pricing_base_cost      = $princing['base_cost']; // <= this is the price you are looking for
        $pricing_base_modifier  = $princing['base_modifier'];
        $pricing_cost           = $princing['cost']; 
        $pricing_modifier       = $princing['modifier'];
        $pricing_from           = $princing['from'];
        $pricing_to             = $princing['to'];
    }
    
    // Raw pricing data output (for tests)
    echo '<pre>'; print_r($product_pricing); echo '</pre>';
    
    ';

    これで、データベースでこのデータをwp_post_metaで見つけることができます。 _wc_booking_pricingの下のテーブル meta_key …したがって、製品IDから次の方法でアクセスすることもできます:

    $pricing_data = get_post_meta( $product_id, '_wc_booking_pricing', false);
    
    // Raw pricing data output (for tests)
    echo '<pre>'; print_r($product_pricing); echo '</pre>';
    
    ';

    1. SQLiteのLIKE演算子で大文字と小文字を区別する方法

    2. PHP/MySQL-複数のタグを追加する方法

    3. PHPを使用して、テーブルを垂直ではなく水平に印刷する

    4. SQLツリー内のすべての直接の子孫を検索します