wordpress循环不返回post结构

时间:2013-05-08 16:58:59

标签: wordpress

我刚刚安装了最新的Wordpress版本(3.5.1),当我像往常一样添加循环时,它不会返回正常的结构。

这是我的php:

<?php get_header(); ?>
    <?php
        $pageid = get_query_var('page_id');
        $postid = $post->ID;
    ?>

<?php if(have_posts()) : ?><?php while(have_posts()) : the_post(); ?>
  <div class="wppost" id="post-<?php the_ID(); ?>">
    <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><h1><?php the_title(); ?></h1></a>

      <div class="wpentry"><?php the_content(); ?></div>
      </div>
      <?php endwhile; ?>
        <div class="wpnavigation">
          <?php posts_nav_link('','F&ouml;reg&aring;ende sida','N&auml;sta sida'); ?>
        </div>
    <?php else : ?>
      <div class="wppost" id="post-<?php the_ID(); ?>">
        <h1><?php _e('Inl&auml;gget hittades inte'); ?></h1>
      </div>
  <?php endif; ?>

这通常有效。但它现在所做的只是返回&lt; p&gt; -elements。

它不会返回wppost,the_title,wpentry或其他任何内容,除了我在帖子中写的内容(目前只有文本)。

这是新事物还是我做错了什么?我已经完成了这几年,到目前为止它已经奏效了。我很难过。

这是来自header.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head profile="http://gmpg.org/xfn/11">

<title><?php bloginfo('name'); ?><?php wp_title(); ?></title>

<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" /> 
<meta name="generator" content="WordPress <?php bloginfo('version'); ?>" /> <!-- leave this for stats please -->

<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>" type="text/css" media="screen" />
<link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="<?php bloginfo('rss2_url'); ?>" />
<link rel="alternate" type="text/xml" title="RSS .92" href="<?php bloginfo('rss_url'); ?>" />
<link rel="alternate" type="application/atom+xml" title="Atom 0.3" href="<?php bloginfo('atom_url'); ?>" />
<link rel="pingback" href="<?php bloginfo('pingback_url'); ?>" />

<?php wp_get_archives('type=monthly&format=link'); ?>
<?php //comments_popup_script(); // off by default ?>
<?php wp_head(); ?>


</head>
<body>

    <div id="container">
        <div id="maincontainer">


            <div id="header">
                <a href="#" title="Descending Chaos"><img alt="Descending Chaos" src="<?php bloginfo('template_directory'); ?>/images/liveheader.png" /></a>
            </div>

            <div id="top">
                <div id="menu">
                    <ul>
                        <?php wp_list_pages('title_li=','sort_column=menu_order'); ?>
                    </ul>
                </div>
                <div id="social">
                    <ul>
                        <li><a href="#" title=""><img alt="Descending Chaos on Spotify" src="<?php bloginfo('template_directory'); ?>/images/spotlogo.png" /></a></li>
                        <li><a href="#" title=""><img alt="Descending Chaos on Reverbnation" src="<?php bloginfo('template_directory'); ?>/images/reverblogo.png" /></a></li>
                        <li><a href="#" title=""><img alt="Descending Chaos on Facebook" src="<?php bloginfo('template_directory'); ?>/images/facelogo.png" /></a></li>
                        <li><a href="#" title=""><img alt="Descending Chaos on YouTube" src="<?php bloginfo('template_directory'); ?>/images/youlogo.png" /></a></li>
                    </ul>
                </div>
            </div>

编辑:使用更多代码更新了原始帖子。

2 个答案:

答案 0 :(得分:0)

如果在循环之前运行<?php print_r( $post ); ?>,您应该能够看到查询。如果它没有返回任何内容,那么查询就会出现问题。你在这里得到的代码看起来很好。

答案 1 :(得分:0)

我将您的代码添加到我的开发网站并且它在那里工作,所以我不认为这是您的代码的问题。

尝试在循环之前放置<?php wp_reset_query(); ?>。可能$wp_queryglobal post data在你的循环之前被修改了,需要恢复。