我有一个有大约8000种产品的网站,网站结构有点差--而不是自定义分类法,品牌名称和零售商是不同品牌的父类,零售商是子类别。
品牌(猫ID 187 -约300个品牌作为子猫)
零售商(猫ID 186 -约20家分店)
我有一个单独的品牌和零售商的个人子was的列表,而对于站点维护,我想知道是否有一种方法来显示所有不小心分配给多个零售商或多个品牌的帖子?
我已经找到了定位分配给两个特定类别的所有帖子的解决方案,但是没有任何能够显示在长数组中的任意两个类别中的帖子的解决方案。
或者,任何属于某个父ID的两个或多个子类别的帖子--如果这比一个长的子猫ID数组要简单的话?
这并不重要,如果它是缓慢的,因为只有我才会看到输出,以维护网站。
如果有人能给我指点的话,我会非常感激的--谢谢:)
乔伊
编辑:我能想到的唯一快速解决方案是用逗号分隔的类别列表输出所有帖子ID,然后用搜索和替换删除所有不相关的类别(或者使用初始查询),然后将这些数据导入Excel,查看哪些帖子的品牌和零售商的列超过2列?想知道是否有比这更优雅的解决方案?谢谢
发布于 2018-02-09 17:09:23
我想我应该为所有的帖子设置一个循环,并在循环中这样做:
$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;代码是未经测试的,但应该给您提供一般的方法。
发布于 2018-02-10 10:38:05
多亏了科林,我终于找到了以下答案:
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的列表,以及这个问题是太多的零售商类别,还是太多的品牌。
https://wordpress.stackexchange.com/questions/293661
复制相似问题