为了账号安全,请及时绑定邮箱和手机立即绑定

在 WooCommerce 中使用 WC_Query 按作者 ID 获取产品?

在 WooCommerce 中使用 WC_Query 按作者 ID 获取产品?

PHP
繁花不似锦 2023-10-15 15:50:48
我尝试使用 WooCommerce 中的 WC_Query 通过帖子作者 id 获取产品,因此我尝试包含一个新的自定义元密钥 "_author",其中包含以下内容:add_filter( 'woocommerce_product_data_store_cpt_get_products_query', 'handling_custom_meta_query_keys', 10, 3 );function handling_custom_meta_query_keys( $wp_query_args, $query_vars ) {    $meta_key = '_author';     if ( ! empty( $query_vars[$meta_key] ) ) {        $wp_query_args['meta_query'][] = array(            'key'     => $meta_key,            'value'   => esc_attr( $query_vars[$meta_key] ),            'operator' => '==',         );    }    return $wp_query_args;}然后我尝试将它与以下内容一起使用wc_get_products():$product_list = wc_get_products( array('_author' => get_current_user_id()) );但它返回空数组。任何想法?
查看完整描述

2 回答

?
富国沪深

TA贡献1790条经验 获得超9个赞

您可以使用未记录的参数“author”在 WC_Query 中简单地按作者 ID 获取产品,如下所示:


$products = wc_get_products( array(

    'status'    => 'publish',

    'limit'     => -1,

    'author'    => get_current_user_id()

) );

你将得到一个WC_Product对象数组


查看完整回答
反对 回复 2023-10-15
?
FFIVE

TA贡献1797条经验 获得超6个赞

您可以像这样使用自定义查询


<?php


$authorID = get_the_author_meta('ID');


$args = array(

    'post_type' => 'product',

    'post_status' => 'publish'

    'posts_per_page' => 12,

    'product_cat' => 'pants'

    'author'    => $authorID

);


$loop = new WP_Query( $args );


?>        

<div class="author_products">

    <?php if ( $loop->have_posts() ) { ?>

        <ul class="author_pubproducts">

        <?php while ( $loop->have_posts() ) : $loop->the_post();

            woocommerce_get_template_part( 'content', 'product' );

        endwhile; ?>

        </ul>

        <?php

        } else {

            echo __( 'No products found', 'textdomain' );

        }

        wp_reset_postdata();

    ?>

希望能成功


查看完整回答
反对 回复 2023-10-15
  • 2 回答
  • 0 关注
  • 114 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号