【问题标题】:Can't get simple product (min) Price Wordpress Woocommerce无法获得简单的产品(分钟)价格 Wordpress Woocommerce
【发布时间】:2022-07-06 14:14:31
【问题描述】:

大家好,我正在尝试创建一个函数,以使产品在 woocommerce 查询中具有最高的最低和最高价格。 问题是我的查询没有得到价格最低的产品

这里是产品示例:

  1. 200 美元
  2. 300 美元特价
  3. 400 美元
  4. 500 美元
  5. 600 美元

结果是 400 美元的产品,它必须是 200 而不是 400。

我的查询:

$args = array(
  'post_type' => 'product',
  'post_status' => 'publish',
  'posts_per_page' => 1,
  'ignore_stickie_posts' => true,
  'fields' => 'ids',
  'orderby' => 'price',
  'order' => 'DESC',
  
  );
 $products_price_min_args = get_posts($args);

$string_id = implode(",", $products_price_min_args);
$product = wc_get_product( $string_id );

if($product) {
  if ( $product->is_type('variable') ){
    $price_min = $product->get_variation_price('min'); // Float number
  }
  elseif ( $product->is_type('simple') ){
    if( $product->is_on_sale() ) {
      $price_min = $product->get_sale_price();         
    }
    else{
      $price_min = $product->get_price(); 
    }
  }
  return $price_min;
}

【问题讨论】:

    标签: php wordpress woocommerce wordpress-theming custom-wordpress-pages


    【解决方案1】:

    Woocommerce 产品价格存储在此表中 - wp_wc_product_meta_lookup

    因此,您必须从该表中查询数据并获取最低价格。当您使用 get_posts 时,它会从未存储产品价格的默认 WordPress 帖子表中获取产品。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-20
      • 2016-02-19
      • 1970-01-01
      • 2015-02-25
      相关资源
      最近更新 更多