如何选择wordpress中属于父类别的所有帖子

bqucvtff  于 2021-06-21  发布在  Mysql
关注(0)|答案(2)|浏览(332)

我正在管理一个商店,使用WoodPress上的woocommerce插件。
其类别配置如下:
第1类
-1a类
--1b类
---1c类
第2类
-2a类
--2b类
---2c类
如您所见,类别是嵌套的。
产品(帖子)属于类别层次结构的底层。
我想要的是一个select查询,它返回所有属于“cat2”的产品。
如何做到这一点?
谢谢你,克雷格

um6iljoc

um6iljoc1#

$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类型和父类别id(cat2),然后这个代码将给出您想要的。

nbewdwxp

nbewdwxp2#

我找到了一种在sql语句中执行所需操作的方法。
为了防止这对任何人都有帮助,这里是select查询。
您需要找到您希望搜索的类别的术语分类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'

相关问题