当前位置: 首页 > 知识库问答 >
问题:

以三列显示自定义分类法,从第一个子项开始

袁奇逸
2023-03-14

我有一个3级深的分类结构,名称为services_tax:



-子

--孙

--孙


我试图显示与当前自定义帖子关联的所有分类法,并将它们作为列div(三分之一)进行回显,而不是像这样显示第一个父级:


-孩子

--孙子

--孙子

我在下面使用的代码是我所能得到的,但是,在get_中使用get_术语,每个循环的get_术语就是获取与帖子无关的术语。

<div class="three-column cf">
<?php
$myterm = 'services_tax';
$terms = get_the_terms( get_the_ID(), $myterm );
if ( $terms ) :
?>
    <?php $i = 0; ?>
    <?php foreach ( $terms as $term ) : ?>
        <?php if ( $term->parent == 0 ) : ?>
            <?php
            $subargs = array(
                'orderby' => 'name',
                'order' => 'ASC',
                'hide_empty' => true,
                'hierarchical' => true,
                'child_of' => $term->term_id,
                'parent' => $term->term_id
            );
            $children = get_terms( $myterm, $subargs );
            ?>
            <?php if( $children ) : //if it has sub-categories ?>
                <?php foreach( $children as $child ) : ?>
                    <?php if ( $i != 0 && $i % 3 == 0 ) : ?>
                        </div><!-- .three-column -->
                        <div class="three-column cf">
                    <?php endif; ?>
                    <div class="third">
                        <?php //var_dump($i); ?>
                        <h4 class="h3"><?php echo $child->name; ?></h4><!-- .h3 -->
                        <?php
                        $subsubargs = array(
                            'orderby' => 'name',
                            'order' => 'ASC',
                            'hide_empty' => true,
                            'hierarchical' => true,
                            'child_of' => $child->term_id,
                            'parent' => $child->term_id
                        );
                        $sub_children = get_terms( $myterm, $subsubargs );
                        ?>
                        <?php if( $sub_children ) : //if it has sub-sub-categories ?>
                            <ul>
                                <?php foreach( $sub_children as $sub_child ) : ?>
                                    <li><?php echo $sub_child->name; ?></li>
                                <?php endforeach; ?>
                            </ul>
                        <?php endif; ?>
                    </div><!-- .third -->
                    <?php $i++; ?>
                <?php endforeach; ?>
            <?php endif; ?>
        <?php endif; ?>
    <?php endforeach; ?>
<?php endif; ?>

我已经阅读了我所能找到的所有没有运气的问题/答案

这篇文章是最有帮助的。

如果我能用get_the_terms并通过一个论点,我觉得我能解决。我感到非常困,任何帮助都将不胜感激。

共有1个答案

翟理
2023-03-14

我想我已经明白了,在foreach中使用wp_get_post_terms()而不是get_terms()。

 类似资料:
  • 我创建了一个自定义的帖子类型(书),然后为这个特定的帖子类型创建了一个自定义分类法(book_cat)。它工作正常,但如果我单击仪表板中的所有书籍页面,则没有列显示已将书籍分配给哪些类别(book_cat)(如果有)。我需要点击每本书编辑并看到那里。 注册新职位类型功能是: 分类法是:

  • 更新2添加名称作为字段,而不是段塞,并添加the_title()只需给我一个页面标题的回声... 更新Jonnhyd23的代码非常有效!!谢谢有没有一种方法可以使术语变得动态?就像标题是阿姆斯特丹一样,我能做一些类似于

  • 在我正在构建的当前网站中,我构建了以下功能。 对当前形势给予更好的理解。 有一个叫做博客的页面。此页面显示列表中的所有博客(帖子)。所有职位的类别都有一个例外。用户可以选择一个类别。一旦用户单击它,用户将转到该类别。php并查看所有具有该特定类别的帖子。 我想创建相同的场景,但不是用自定义帖子类型。我有一个模板部分;offer-list-template.php offer-list-templa

  • 我已经使用代码设置了WordPress自定义帖子类型。我已经设法让自定义帖子显示在“归档”页面中,但如果我单击“归档”页面中的链接,WP无法找到单个帖子页面。 我想我可能对定制的post permalinks有问题。希望有人能帮我 functions.php 页面模板 要显示自定义帖子,我设置了一个带有WP查询的新页面模板: 页面模板代码似乎工作和所有自定义帖子显示预期但当我点击标题链接我得到一个

  • 我不知道为什么自定义文章类型的自定义分类不显示在管理列中(它消失了)。 以下是始终有效的代码: 如下所述: https://codex.wordpress.org/Function_Reference/register_taxonomy 第二个参数设置为null,因为在使用register\u post\u type()时,我将分类法与自定义post类型相关联 我不知道为什么代码停止工作了。我从3

  • 我为woocommerce产品“coffee_type”创建了自定义分类法。我为此分类法创建了一个ACF图像字段“coffee\u type\u image”。 我想在产品页面上显示带有链接的图像,而不是分类法的名称。我在这里读了大多数关于在分类法上显示acf图像的文章,但每一篇都是关于使用归档分类法页面而不是产品页面。我正在编辑single-product.php(确切地content-sing