当前位置: 首页 > 知识库问答 >
问题:

如何以程序化的方式获得商业中的所有产品?

慕容高卓
2023-03-14

我想获取WooCommerce中的所有产品数据(产品sku、名称、价格、库存、可用性等),我可以使用wp查询吗?

共有3个答案

高琛
2023-03-14

构建查询时,将帖子类型设置为product

$query->set('post_type', 'product');

这只会通过woocommerce产品进行搜索。

此外,如果您正在创建主题,您可以从/wp content/plugins/woocommerce/templates/目录中获取任何文件,并将其放入/wp content/themes>目录中/

利博远
2023-03-14

感谢所有的回复。我决心像巨浪一样

$full_product_list = array();
$loop = new WP_Query(array('post_type' => array('product', 'product_variation'), 'posts_per_page' => -1));

    while ($loop->have_posts()) : $loop->the_post();
        $theid = get_the_ID();
        $product = new WC_Product($theid);
        if (get_post_type() == 'product_variation') {

            // ****************** end error checking *****************
        } else {
            $sku = get_post_meta($theid, '_sku', true);
            $selling_price = get_post_meta($theid, '_sale_price', true);
            $regular_price = get_post_meta($theid, '_regular_price', true);
            $description=get_the_content();
            $thetitle = get_the_title();

        }
        // add product to array but don't add the parent of product variations
        if (!empty($sku))
            $full_product_list[] = array("PartyID" => (int) $party_id,"Description"=> $description,
                "ExternalNumber" => $theid, "ProductName" => $thetitle, "sku" => $sku,
                "RegularPrice" => $regular_price, "SellingPrice" => $selling_price,
                "ExternalProductCategoryId" => $cat_id, "ExternalProductCategoryName" => $cat_name);
    endwhile; 
南宫俊逸
2023-03-14

这样,您可以通过wp_query获得所有产品:

global $wpdb;

$all_product_data = $wpdb->get_results("SELECT ID,post_title,post_content,post_author,post_date_gmt FROM `" . $wpdb->prefix . "posts` where post_type='product' and post_status = 'publish'");

如果您需要进一步的产品数据,则如下所示:

$product = wc_get_product($product_id);
$product->product_type;
get_post_meta($prodyct_id, '_regular_price');
$product->get_available_variations();
 类似资料:
  • 我想得到10产品从一个类别在WooCommerce 例如,对于获取帖子类别的最新帖子,我使用以下代码 我想要一个代码,像这样的商业产品

  • 编辑问题以包括所需的行为、特定问题或错误以及重现问题所需的最短代码。这将有助于其他人回答这个问题。 这是我的日志 法典:

  • 我想以编程方式查看广告包的所有ProximityUID。一些文章说这在iOS上是不可能的,但Android是可能的。但我不敢相信,因为我发现神奇的应用程序“BLExplr”有这个功能。我需要在我的应用程序中实现该功能。有人知道怎么做吗?或者有好的例子吗?任何帮助都将不胜感激。 (更新日期2014/1/17) 我相信@davidgyoung的答案是正确的。估计信标的近似UID为“B9407F30-F

  • 问题内容: 我知道KEYS命令,但这仅返回键(我猜所有的字符串类型都是String),并且显然不认为集合是键。 是否有用于获取数据库中所有集合的命令?其他数据类型(哈希,列表,排序集)又如何呢? http://redis.io/topics/data-types 问题答案: 我知道KEYS命令,但这仅返回键(我猜所有的字符串类型都是String),并且显然不认为集合是键。 不管您的密钥是哪种数据类

  • 问题内容: 假设我有一个.class文件,可以获取该类中包含的所有方法吗? 问题答案: 要了解所有方法,请在控制台中使用以下语句: 要么 或例如:

  • 问题内容: 我正在开发一个应用程序,除了一件事,它几乎完成了:我不知道如何提高链接速度并将其放置在状态栏中。我是Java新手,所以如果有人可以帮助我,我将不胜感激。PS对不起,英语不好。 问题答案: 如答复者所建议,您的问题不是很清楚。您 可能指的是链路连接速度 (即,具有良好的信号接收Wifi时高达54 Mbps或具有全速HSDPA时高达7.2 Mbps),具体取决于: 一次使用的网络接口 。某