这是一个有点奇怪的问题,但我很难找到如何做到这一点的答案:
我正在尝试创建一个自定义查询,该查询获取包含在WooCommerce订单中的所有产品(及其元)。
例如,假设我正在等待这些订单:
A级
B命令
我的目标是根据这些订购的产品创建一个列表,该列表由产品的元数据来订购。就像这样:
元密钥A产品
但同样,这些产品(包括数量)只属于订单范围。
我面临的问题是存储在数据库中的"Order Item“和"Order Item Meta”非常有限,不能显示与产品相关的所有信息。换句话说,我没有找到获取信息的方法,我需要创建循环来创建我的列表。
我的数据库技能是有限的,所以想法将被感谢!
发布于 2013-12-08 15:30:01
以下是一些可能有助于您的相关代码:
add_filter( 'woocommerce_shop_order_search_fields', 'woocommerce_shop_order_search_product_cat' );
function woocommerce_shop_order_search_product_cat( $search_fields ) {
$args = array(
'post_type' => 'shop_order'
);
$orders = new WP_Query($args);
if($orders->have_posts()) {
while($orders->have_posts()) {
$post = $orders->the_post();
$order_id = get_the_ID();
$order = new WC_Order($order_id);
$items = $order->get_items();
foreach($items as $item) {
$product_cats = wp_get_post_terms( $item['product_id'], 'product_cat' );
foreach($product_cats as $product_cat) {
add_post_meta($order_id, "_product_cat", $product_cat->name);
}
}
}
};
$search_fields[] = '_product_cat';
return $search_fields;
}https://stackoverflow.com/questions/20366999
复制相似问题