首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查找分配给多个类别的WordPress帖子

查找分配给多个类别的WordPress帖子
EN

WordPress Development用户
提问于 2018-02-09 16:41:12
回答 2查看 50关注 0票数 0

我有一个有大约8000种产品的网站,网站结构有点差--而不是自定义分类法,品牌名称和零售商是不同品牌的父类,零售商是子类别。

品牌(猫ID 187 -约300个品牌作为子猫)

  • 品牌1
  • 品牌2
  • 品牌3等

零售商(猫ID 186 -约20家分店)

  • 零售商1
  • 零售商2
  • 零售商3等

我有一个单独的品牌和零售商的个人子was的列表,而对于站点维护,我想知道是否有一种方法来显示所有不小心分配给多个零售商或多个品牌的帖子?

我已经找到了定位分配给两个特定类别的所有帖子的解决方案,但是没有任何能够显示在长数组中的任意两个类别中的帖子的解决方案。

或者,任何属于某个父ID的两个或多个子类别的帖子--如果这比一个长的子猫ID数组要简单的话?

这并不重要,如果它是缓慢的,因为只有我才会看到输出,以维护网站。

如果有人能给我指点的话,我会非常感激的--谢谢:)

乔伊

编辑:我能想到的唯一快速解决方案是用逗号分隔的类别列表输出所有帖子ID,然后用搜索和替换删除所有不相关的类别(或者使用初始查询),然后将这些数据导入Excel,查看哪些帖子的品牌和零售商的列超过2列?想知道是否有比这更优雅的解决方案?谢谢

EN

回答 2

WordPress Development用户

发布于 2018-02-09 17:09:23

我想我应该为所有的帖子设置一个循环,并在循环中这样做:

代码语言:javascript
复制
$post_cats = get_the_category();
$brand_cats = 0;
$retail_cats = 0;
foreach ( $post_cats as $post_cat ) {
    if ($post_cat->category_parent == 187) {
        $brand_cats++;
    if ($post_cat->category_parent == 186) {
        $retail_cats++;
    }
}
if ( $brand_cats > 1 )
    echo "Duplicate Brand for Post #".get_the_ID;
if ( $retail_cats > 1 )
    echo "Duplicate Retailer for Post #".get_the_ID;

代码是未经测试的,但应该给您提供一般的方法。

票数 2
EN

WordPress Development用户

发布于 2018-02-10 10:38:05

多亏了科林,我终于找到了以下答案:

代码语言:javascript
复制
 category_parent == 187) {
        $brand_cats++; }
    if ($post_cat->category_parent == 186) {
        $retail_cats++;
    }
}
if ( $brand_cats > 1 )  {
 echo "Multiple Brands ";
    echo $id;
    echo "
";
   } else {
    echo "";
}

if ( $retail_cats > 1 )  {
 echo "Multiple Retailers ";
    echo $id;
    echo "
";
   } else {
    echo "";
}
    ?>

然后在WP查询中选择我需要搜索的帖子-这会输出一个帖子is的列表,以及这个问题是太多的零售商类别,还是太多的品牌。

票数 0
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/293661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档