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

Wordpress-仅显示过去断开分页的帖子

顾亦
2023-03-14

我有一个事件页面,显示“事件”自定义帖子类型。在页面的顶部,我有两个即将发布的帖子,在即将发布的事件列表中,然后在底部,我有3个过去的事件,在过去的事件列表中。根据“事件日期”自定义字段是否在过去,在每个部分中显示帖子。过去的事件使用WP page navi插件对帖子进行分页“每页发布”设置为1作为测试。

应该有3页,其中有1个过去的职位显示在他们,分别。不幸的是,分页显示了5个页面,前两个页面上没有显示文章,好像即将发布的文章列表中的文章表现为重影。我删除了即将发布的帖子列表作为测试,但这没有什么区别。

有人知道这是什么原因吗?我完全不知道。谢谢。

<?php
    $temp_post = $post; // Store the Page the Post

    // Get the current date
    $current_date = date('M d, Y', time());
    $current_date = strtotime( $current_date );

            $wp_query= null;
            $wp_query = new WP_Query();
            $args = array( 'post_type' => 'events','posts_per_page' => 1,'paged' => $paged,'meta_key' => 'event_date', 'orderby' => 'meta_value_num', 'order' => 'DESC');
            $wp_query->query( $args );

            if ( $wp_query->have_posts() ) : 
            while ( $wp_query->have_posts() ) : $wp_query->the_post(); 

               // Get the date custom field
                $post_date = get_field('event_date');
                $post_date = strtotime( $post_date );

                // If older than post date, don't show it
                if(  $current_date > $post_date ): ?>

        MY POST CONTENT GOES HERE

        <?php endif; // END DATE FILTER ?>
        <?php endwhile; //END LOOP ?>

        <?php /* Start wp-pagenavi support */ ?>
        <?php if(function_exists('wp_pagenavi') ) : 
            echo '<nav class="pag">'; ?>
            <?php wp_pagenavi(); ?>
            <?php echo '</nav>'; ?>
        <?php else: ?>  
            <?php twentyeleven_content_nav( 'nav-below' ); ?>
        <?php endif; ?><?php /* End wp-pagenavi support */ ?>

    <?php endif; ?>
    <?php $post = $temp_post; // Reset the Post ?>

共有2个答案

闻人举
2023-03-14

非常感谢,我朝着正确的方向努力,终于解决了这个问题。

    // Get the current date
    $current_date = date('Ymd', time());


            $wp_query= null;
            $wp_query = new WP_Query();
            $args = array( 
                            'post_type' => 'events',
                            'posts_per_page' => 1,
                            'paged' => $paged, 
                            'orderby' => 'meta_value_num', 
                            'order' => 'DESC',
                            'meta_key' => 'event_date', 
                            'meta_query' => array(
                                                array(
                                                        'key' => 'event_date',
                                                        'value' => $current_date,
                                                        'compare' => '<',
                                                        'type' => 'CHAR'
                                                    )
                                        )
                            );

            $wp_query->query( $args );

            if ( $wp_query->have_posts() ) : 
            while ( $wp_query->have_posts() ) : $wp_query->the_post(); ?>

            MY POST CONTENT HERE


        <?php //endif; // END DATE FILTER ?>
        <?php endwhile; //END LOOP ?>

        <?php /* Start wp-pagenavi support */ ?>
        <?php if(function_exists('wp_pagenavi') ) : 
            echo '<nav class="pag">'; ?>
            <?php wp_pagenavi(); ?>
            <?php echo '</nav>'; ?>
        <?php endif; ?><?php /* End wp-pagenavi support */ ?>

    <?php endif; ?>
微生毅
2023-03-14

它扮演鬼魂是因为你没有展示它。您正在页面底部显示导航。查询返回5页,因此导航将为5页。

但如果不符合这个条件,你就不能显示帖子

// If older than post date, don't show it
if(  $current_date > $post_date ): ?>

这就是为什么那些帖子没有显示出来。删除该条件,您将看到所有的帖子都显示为它应该显示的样子。

如果希望以这种方式显示分页,则必须限制查询本身返回的帖子数量。

 类似资料:
  • 在一个新的WordPress模板中,我想自定义单个。php,以便仅向帖子作者显示评论列表。 其他用户(客人和其他帖子作者)不应该看到评论或空白。 总之,帖子作者(登录时)可以在他的帖子底部看到评论列表,但在其他作者写的帖子底部看不到任何内容。 我应该对下面的代码应用什么条件代码? 这仅适用于前端。我不关心管理面板。

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

  • 问题是...当我点击编辑文章/编辑页面时,它试图打开http://localhost/site/wp-admin/post-108.php?post=286 我不记得我到底做了什么,但它一定是在我的IDE重构代码后开始的,当时我正在重命名模板文件。 没有邮政108。php在wp admin文件夹或我的主题文件夹中,但有帖子。php。我不知道它为什么要开108后。不存在的php。 注意:这是一个自定

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

  • 我想显示的帖子,如果他们符合两个独立的分类,这是新娘配件免费和格拉斯哥。 目前,我可以获得下面的wp_查询循环代码,以显示两种分类法的所有结果;但是,我需要循环只显示选择了这两个类别的帖子。 如果可以做到这一点,是否仍然可以将循环查询变量传递到url中。我们需要它来创建指向结果的链接。 提前感谢!

  • 这不是关于特征图像元字段的问题。我试图找到一个答案,但我尝试的每一个搜索显示,人们试图添加‘特色图像’元到他们的自定义帖子类型。我已经为我的主题和我的自定义帖子类型启用了这个功能。看起来工作得很好。我已经设置了一个“特色图像”,我看到它时,我编辑的帖子。我的主题是一个二十岁的孩子。 在我的主页上,我显示了最近的条目(包括“post”类型和“custom-post”类型),标题、节选和左边的缩略图。