为什么我的存档页面没有返回任何帖子?

时间:2013-12-07 12:41:46

标签: php wordpress

我正在使用wordpress,并认为我可能在某个地方犯了一个大错误。最初我注意到,当浏览到我的archive.php页面时,我得到了一组帖子,但是分页不起作用。例如,我浏览了一个参与档案,作者有10个帖子,但我的网站限制设置为在页面上显示5个帖子。我看到5个帖子和下一页的链接,但点击链接会将我带到404。

我已经更改了存档页面顶部的WP查询,所以我认为这是一个问题......

无论如何,为了缩短篇幅,我把整个档案页面剥离了下面的一个非常简单的例子。使用它作为archive.php页面的代码总是返回'没有帖子'文本,即使我正在查看同一作者的存档页面。

帮助!

<?php get_header(); ?>

<?php if ( have_posts() ) : ?>

        <h1>We have posts!</h1>

        <?php while ( have_posts() ) : the_post(); ?>

            <p>There is a post here</p>

        <?php endwhile; ?>

    <?php else : ?>
        <p>there is no post here</p>
    <?php endif; ?>

<div><?php posts_nav_link(' ','Previous Page','Next Page'); ?></div>
<div><?php posts_nav_link(' ','Go Back','Go Back'); ?></div>

我的header.php看起来像:

<!DOCTYPE html>
<html>
<head>
    <link rel="stylesheet" href="<?php echo get_template_directory_uri(); ?>/reset.css" />
    <link rel="stylesheet" href="<?php echo get_stylesheet_uri(); ?>" />
    <?php wp_head(); ?>
</head>
<body <?php body_class(); ?>>
<section id="content" role="main">

2 个答案:

答案 0 :(得分:1)

您可能已在侧栏或functions.php文件中更改了帖子查询。尝试使用wp_reset_query()进行检查。 (Codex: wp_reset_query

<?php
get_header();
wp_reset_query();

if ( have_posts() ) : ?> ...

答案 1 :(得分:0)

根据wordpress,您的代码中没有错误。这些必须是头文件或其他地方的错误。