如何选择Wordpress中属于父类

时间:2018-01-05 08:37:45

标签: php mysql wordpress woocommerce

我正在管理一个在Wordpress上使用WooCommerce插件的商店。

他们的类别配置如下:

Cat 1
- Cat 1A
- Cat 1B
--- Cat 1C

Cat 2
- Cat 2A
- Cat 2B
--- Cat 2C

如您所见,这些类别是嵌套的。

产品(帖子)属于类别层次结构的底层。

我想要的是一个选择查询,它会返回属于' Cat 2'例如。

如何做到这一点?

谢谢你, 克雷格

2 个答案:

答案 0 :(得分:0)

$args = array(
      'post_type' => 'post', 
      'orderby' => 'ID', 
     /* 'meta_key' => 'rankk', */
      'order' => 'DESC', 
      'posts_per_page' => 100,
      'tax_query' => array(
            array(
                'taxonomy' => 'category',
                'field'    => 'term_id',
                'terms'    => 'YOUR PARENT CATEGORY ID',
            ),
        ),
);

$q = new WP_Query( $args );

if ( $q->have_posts() ) {
    while ( $q->have_posts() ) {
        $q->the_post();
        the_title();
    }
    wp_reset_postdata();
} 

//输入post_type和父类别ID(Cat2),然后此代码将提供您想要的内容。

答案 1 :(得分:0)

我找到了一种在SQL语句中做我需要的方法。

以防这对任何人都有帮助,这里是选择查询。

您需要找到您要搜索的类别的term_taxonomy_id,在我的情况下,Cat 2的ID为8412.

SELECT wp_postmeta.meta_key, wp_postmeta.meta_value, wp_term_relationships.object_id, wp_term_relationships.term_taxonomy_id
from wp_postmeta
INNER JOIN wp_term_relationships ON wp_postmeta.post_id=wp_term_relationships.object_id
where term_taxonomy_id = '8412'