我找不到一种方法来循环使用wordpress的类别和每个类别的帖子

时间:2017-11-29 21:37:51

标签: php wordpress foreach twig

我正在创建一个带有主题的wordpress网站,允许我每页使用树枝模板。

在functions.php中,我可以通过

获取我想要的自定义类别
    $context['test'] = get_terms('workshop_category');

    foreach($context['test'] as $key => $value){
        $args = [
            'post_type' => 'workshop',
            'workshop_category' => $context['test'][$key]->id,
            'posts_per_page' => -1,
        ];

        $context['workshops'] = Timber::get_posts($args);


    }

在该循环中,我想循环每个workshop_category的所有研讨会。使用当前代码和twig代码,我可以获得每个类别下的所有研讨会。但它只需要具有该类别的那些

<li class="navigation__list__item hasMenu"><a href="#">Workshops</a>
                <div class="dropdown">
                    <ul class="dropdown__menu">
                        {% for workshop in test %}
                            <li class="dropdown__menu__item">
                                <a class="dropdown__menu__item__title" href="{{ workshop.link }}">{{ workshop.name }}</a>
                            </li>
                            {% for w in workshops %}
                                <li class="dropdown__menu__item">
                                    <a class="dropdown__menu__item__title" href="{{ w.link }}">{{ w.title }}</a>
                                </li>
                            {% endfor %}
                        {% endfor %}
                    </ul>
                </div>
            </li>

这就是我要归还的内容:第1类:研讨会1研讨会2,第2类:研讨会1研讨会2.我

1 个答案:

答案 0 :(得分:0)

假设您的workshop_category是自定义帖子元,您可以在meta_query中使用$args密钥:

$args = [
    'post_type' => 'workshop',
    'meta_query' => [
        ['key' => 'workshop_category', 'value' => $context['test'][$key]->id]
    ],
    'posts_per_page' => -1,
];