显示分层自定义分类

时间:2017-07-26 作者:Ann Margarette

我买了我的不动产主题,我需要一个用于社区自定义分类的子类别,所以我将层次设置为True。但当我尝试在我的页面中显示它时,社区排在子社区之前。这是它显示的内容:

阿联酋迪拜商业大厦商业湾

而不是

阿联酋迪拜商业湾商业大厦

商业大厦是孩子,商业湾是父母。在父母之前应该先是孩子,对吗?

你能帮帮我吗。

here is the screenshot when i display the community

代码如下:

    $communitylabels = array(
            \'name\' => __( \'Community\', \'contempo\' ),
            \'singular_name\' => __( \'Community\', \'contempo\' ),
            \'search_items\' =>  __( \'Search Communities\', \'contempo\' ),
            \'popular_items\' => __( \'Popular Communities\', \'contempo\' ),
            \'all_items\' => __( \'All Communities\', \'contempo\' ),
            \'parent_item\' => __( \'Parent\', \'contempo\' ),
            \'parent_item_colon\' => __( \'Parent\', \'contempo\' ),
            \'edit_item\' => __( \'Edit Community\', \'contempo\' ),
            \'update_item\' => __( \'Update Community\', \'contempo\' ),
            \'add_new_item\' => __( \'Add New Community\', \'contempo\' ),
            \'new_item_name\' => __( \'New Community\', \'contempo\' ),
            \'separate_items_with_commas\' => __( \'Separate Communities with commas\', \'contempo\' ),
            \'add_or_remove_items\' => __( \'Add or remove Communities\', \'contempo\' ),
            \'choose_from_most_used\' => __( \'Choose from the most used Communities\', \'contempo\' )
        );
        register_taxonomy( \'community\', \'listings\', array(
            \'hierarchical\' => true,
            \'labels\' => $communitylabels,
            \'show_ui\' => true,
            \'query_var\' => true,
            \'rewrite\' => array( \'slug\' => \'community\' ),
        ));
    }

    if ( ! function_exists( \'community\' ) ) {
        function community() {
            global $post;
            global $wp_query;
            $terms_as_text = strip_tags( get_the_term_list( $wp_query->post->ID, \'community\', \'\', \', \', \'\' ) );
            echo esc_html($terms_as_text);
        }
    }
以下是调用自定义分类法时的代码:

      // Title
        case \'listing_title\' :

           echo \'<h2 class="marT5 marB0">\';
                ct_listing_title();
            echo \'</h2>\';

        break;

        // location
        case \'listing_city_state_zip\' :

            echo \'<p class="location marB0">\';  
            community();
            echo \', \';     
                city();
                echo \'\';
                country();

            echo \'</p>\';

1 个回复
最合适的回答,由SO网友:Johansson 整理而成

如果要按层次结构对术语进行排序,可以使用wp_get_post_terms() 相反

其用法类似于get_the_term_list(). 看看这个简单的例子:

wp_get_post_terms( $post->ID, $taxonomy->name, array( \'orderby\' => \'term_id\' ) );
我认为我们可以有把握地假设父母的孩子的ID大多较低(如果不是手动更改的话),所以这就可以做到。但如果这篇文章属于几个家长,那么这篇文章就会再次被打破。

看看亲戚codex 第页了解有关此功能的更多信息。

结束

相关推荐

$wbdb函数是否可以在不加载wp_load.php的wp中使用

如果我想在wp站点上添加对db的访问权。。我知道使用$wpdb global肯定更简单。。这是否允许您在不包含wp\\U负载的情况下访问站点。根目录中的php文件。。我想如果你已经激活了wp,它可能会很好。。但我猜测,如果您没有运行wp,那么您可能必须将其作为最小值加载。。有人知道吗。我已经试过了,即使通过wp页面运行,它仍然需要wp加载。php是正常的。