如何在自定义帖子类型范围内计算自定义分类术语的实例?

问题描述

我有一个称为“任务”的自定义分类法,在“角色”和“产品”这两种自定义帖子类型之间共享。

预期结果: 我需要计算给定的“任务”术语用于每个“角色”帖子类型减去次数,使用相同的“产品”帖子类型共享的次数“任务”一词。

实际结果: 无人举报,因为我不知道该如何解决

错误消息: 没有

我尝试过的事情: Google一直在回覆如何计算帖子类型,而不是术语:(

下面的代码是我的计划B。在这里,我仅对每个post-type进行一些微循环(为简便起见,下面仅显示一个),通过array_count_values将任务转换为关联数组

    $taskList = [];
        
    $queryRoles = new WP_Query( array(
        "post_type" => "roles"
    ));

    while ( $queryRoles->have_posts() ) : $queryRoles->the_post();
        $tasks = get_the_terms( get_the_ID(),"tasks" );
        foreach ( $tasks as $task ) :
            $taskList[] = $task->name;
        endforeach;
    endwhile;

    $overlappingRoleTasks = $taskList;

    print_r(array_count_values($taskList));

解决方法

您可以执行一个循环,该循环仅限于分配了任务的帖子,而一个循环仅限于分配了任务的产品。 然后使用sizeof();返回数组中元素的数量,计算每个帖子和产品的数量,然后进行一些基本的php数学运算。

有关sizeof(); @ https://www.w3schools.com/php/func_array_sizeof.asp

的更多信息