Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 我如何获取分类类别,以便它们在wordpress中的发布日期从最新到最旧_Php_Wordpress_Taxonomy - Fatal编程技术网

Php 我如何获取分类类别,以便它们在wordpress中的发布日期从最新到最旧

Php 我如何获取分类类别,以便它们在wordpress中的发布日期从最新到最旧,php,wordpress,taxonomy,Php,Wordpress,Taxonomy,我的网站主页上有视频分类。拥有名为视频类别的分类法和名为视频列表的自定义帖子类型 我需要显示分类类别,以便将其帖子日期从最新到最旧。这意味着,如果我今天发布一篇视频文章,当前的文章类别必须位于顶部,因为它的文章有最新的日期,其余的应该从最新到最旧 我不知道从哪里开始。从获取最新帖子开始,不知道下一步是什么 我目前拥有的是用下面的代码显示它们 <ul class="catLists"> <?php

我的网站主页上有视频分类。拥有名为视频类别的分类法和名为视频列表的自定义帖子类型

我需要显示分类类别,以便将其帖子日期从最新到最旧。这意味着,如果我今天发布一篇视频文章,当前的文章类别必须位于顶部,因为它的文章有最新的日期,其余的应该从最新到最旧

我不知道从哪里开始。从获取最新帖子开始,不知道下一步是什么

我目前拥有的是用下面的代码显示它们

<ul class="catLists">
                          <?php
                        $video_args = array(
                            'hide_empty' => true,
                            'fields' => 'all',
                            'hierarchical' => true,
                            'child_of' => 0,
                            'get' => '',
                            'name__like' => '',
                            'pad_counts' => false,
                            'taxonomy' => 'video-category',
                            'cache_domain' => 'core'
                        );
                        $v_terms = get_terms('video-category', $video_args);
                        $coount = 1;
                        global $wpdb;
                        foreach($v_terms as $key => $term) {
                            $count_views = $wpdb->get_results($wpdb->prepare("
                                SELECT SUM(pm.meta_value) AS view_count FROM {$wpdb->postmeta} pm
                                LEFT JOIN {$wpdb->posts} p ON p.ID = pm.post_id
                                LEFT JOIN {$wpdb->term_relationships} tr ON p.ID = tr.object_id
                                LEFT JOIN {$wpdb->term_taxonomy} tt ON tr.term_taxonomy_id = tt.term_taxonomy_id
                                WHERE pm.meta_key = 'post_views_count'
                                AND tt.taxonomy = 'video-category'
                                AND tt.term_id = %d
                            ", $term->term_id));

                            // Add to the category object the result
                            $v_terms[$key]->count_views = (!empty($count_views)) ? $count_views[0]->view_count : 0;


                        } 
                        function cmp($a, $b) {
                            if ($a->count_views == $b->count_views) {
                                return 0;
                            }
                            return ($a->count_views > $b->count_views) ? -1 : 1;
                        }
                        usort($v_terms, "cmp");
                        foreach ($v_terms as $v_term) {
                            $term_link = get_term_link($v_term, 'video-category');
                            if($coount < 7){ 
                            ?>
                    <li class="video_<?php echo $v_term->term_id; ?>_term" id="<?php echo $coount++ ?>">
                        <a href="<?php echo $term_link ;?>" id="<?php echo $v_term->term_id; ?>"><?php echo $v_term->name; ?></a>
                        <span class="active_tab_border"></span>
                    </li>
                        <?php  }else{?>
                 <?php if($coount == '7') { ?>
                 </ul>

    您可以通过一个WP_查询来完成


    您可以通过一个WP_查询来完成


    查看Yes,但是如何获取最新的帖子及其类别,以及当新帖子动态地改变了类别的顺序时,你能提供一个基本的例子来显示“之前和之后”吗或者期望的输入和期望的结果?请参见我的问题@Mike510Check out Yes,但如何获取最新的帖子及其类别,以及新帖子动态更改类别顺序?能否提供一个基本示例,如“之前和之后”或者期望的输入和期望的结果?请参见我的问题@mike510a编辑,但这将只返回按日期顺序排列的所有帖子,我需要对它们进行分类,因此需要浏览每个类别中的所有帖子,并根据这一点检查日期和顺序。使用嵌套循环——只查询类别类型的一个循环,然后是另一个查询,按日期查询特定类别和顺序。你的意思是按日期获取所有帖子,然后按类别@mike510a排序?是的,如果这是你试图实现的,但这将按日期顺序返回所有帖子,我需要对它们进行分类,所以需要检查每个类别中的所有帖子,根据这一点检查日期和顺序。使用嵌套循环——一个循环只查询类别类型,然后另一个查询按日期查询特定类别和顺序。你的意思是按日期获取所有帖子,然后按类别@mike510a排序?是的,如果这就是你想要实现的
    $args = array(
        'post_type' => 'video-list',
        'orderby'    => 'date',
        'category_name' => 'video-category'
    );
    $query = new WP_Query( $args );