簡體   English   中英

我如何獲得分類法類別,以便他們的帖子日期在wordpress中從最新到最舊

[英]How do i get taxonomy categories in order to their posts date in wordpress from latest to oldest

我的網站主頁上有視頻類別。 有一個名為視頻類別的分類和稱為視頻列表的自定義帖子類型。

我需要顯示分類法類別,以便其帖子的日期最新到最舊 這意味着,如果我今天發布一個視頻帖子,那么當前的帖子類別必須位於頂部,因為它的帖子有最新日期,其余的應該從最新到最舊。

我不知道從哪里開始。 開始獲取最新帖子,不知道下一步是什么。

我目前所擁有的是通過以下代碼查看最多顯示它們

<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_Query來完成它

https://codex.wordpress.org/Class_Reference/WP_Query

$args = array(
    'post_type' => 'video-list',
    'orderby'    => 'date',
    'category_name' => 'video-category'
);
$query = new WP_Query( $args );

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM