【问题标题】:Show a single post on other template/page在其他模板/页面上显示单个帖子
【发布时间】:2015-10-20 21:26:17
【问题描述】:

在一个网站上工作,我需要一个单独的模板/页面来显示那个帖子。

在主页(索引)上,我将循环浏览我的类别并仅显示其中的一部分 - 事件 - 新闻 - 参考。

像这样:

         <?php
            $query = new WP_Query( array( 'category_name' => 'Events' ) );

            if ($query->have_posts())
            {
                while ($query->have_posts()) : $query->the_post();
                        $haveEvents = true;
                        if ($eventCount < 3) {
                            $eventCount++;
                            ?>
                            <div class="event-tile">
                                <div class="event-tile-content">
                                    <h3><?php the_title(); ?></h3>
                                    <h4><?php the_time('F jS, Y'); ?></h4>
                                    <a href="<?php the_permalink(); ?>" class="event-tile-read-more">Lees meer</a>
                                </div>
                            </div>
                            <?php
                    }
                endwhile;
            }

每个部分都有一个阅读全部和阅读特定项目的按钮:

我已经知道如何在一个名为 page-posts.php 的单独页面上显示一个类别中的所有帖子

在 page-posts.php 上,我只是检查我在哪个页面,并根据哪个页面进行查询以显示指定类别中的帖子

        $query;
        if (is_page('events')) {
            $query = new WP_Query( array( 'category_name' => 'Events' ) );
        }
        elseif (is_page('news')) {
            $query = new WP_Query( array( 'category_name' => 'News' ) );
        }

        if ($query->have_posts())
        {
etc..

现在我想不通(即使在谷歌上花了几个小时之后),如何在单个帖子页面上显示来自主页 (index.php) 的单个帖子...

关于我使用的操作按钮:

<a href="<?php the_permalink(); ?>" class="event-tile-read-more">Lees meer</a>

这让我回到了主屏幕。 (刚开始在 Wordpress 上)

【问题讨论】:

    标签: php wordpress


    【解决方案1】:

    在 Wordpress 主题中,single.php 用于显示帖子。如果它不存在,则使用您的index.php

    尝试将您的 page-posts.php 移动到 single.php

    【讨论】:

    • 啊,谢谢,这行得通,只是为了记录,我已经在谷歌上搜索了几个小时,非常感谢!
    • 顺便说一句,我现在同时使用这两种方法,单个用于特定帖子和页面帖子用于类别中的所有帖子!
    【解决方案2】:

    也许使用archive-events.php 会更好。您可以为自定义帖子制作存档。

    您可以这样做:其中 events 是您的自定义帖子类型。然后你登陆事件存档页面。

    据我所知,您的问题是该帖子是全球帖子(来自您的家)。所以也许你可以 setup_postdata($post),或者使用 home_url('url') 函数。

    【讨论】:

    • 嘿 wouter,感谢您的回复。我已经找到了使用存档之类的东西,但这对我来说并不奏效。有什么好处,因为 single.php 适用于帖子
    猜你喜欢
    • 2015-06-04
    • 1970-01-01
    • 1970-01-01
    • 2019-12-09
    • 1970-01-01
    • 1970-01-01
    • 2011-12-30
    • 2012-12-18
    • 1970-01-01
    相关资源
    最近更新 更多