Single.php显示空白页

时间:2016-01-08 18:28:38

标签: php html wordpress

我正在尝试构建自己的主题并将其上传到Wordpress,但我的single.php文件却根本不起作用。它只显示一个空白页面。我已经尝试了很多东西让它发挥作用,但现在我不知道该怎么做了。这是我的博客页面的php文件:



<?php 
/**
 *Template Name: Blog Posts
 */
get_header('header4'); ?>

<section id="headerbox">
					<header>
						<h2 class="referensrubrik">Nyheter</h2>
					</header>
						<p class="referenstext">Det senaste från AL Konsult.</p>
				</section>

<main id="blog">
		<?php // Display blog posts on any page @ http://m0n.co/l
		$temp = $wp_query; $wp_query= null;
		$wp_query = new WP_Query(); $wp_query->query('showposts=5' . '&paged='.$paged);
		while ($wp_query->have_posts()) : $wp_query->the_post(); ?>
		
		<article id="blogpost" id="post-<?php get_the_ID(); ?>" <?php post_class(); ?>>

		<h2><a href="<?php the_permalink(); ?>" title="Läs mer" class="blogpost"><?php the_title(); ?></a></h2>
		<h5><?php the_time('F jS, Y') ?> <!-- by <?php the_author() ?> --></h5>
		<?php the_excerpt(); ?>
		<hr>
		</article>

		<?php endwhile; ?>

		<?php if ($paged > 1) { ?>

		<nav id="nav-posts">
			<div class="prev"><?php next_posts_link('&laquo; Previous Posts'); ?></div>
			<div class="next"><?php previous_posts_link('Newer Posts &raquo;'); ?></div>
		</nav>

		<?php } else { ?>

		<nav id="nav-posts">
			<div class="prev"><?php next_posts_link('&laquo; Previous Posts'); ?></div>
		</nav>

		<?php } ?>

		<?php wp_reset_postdata(); ?>

</main>

<?php get_footer(); ?>
				
				
				
&#13;
&#13;
&#13;

现在我的single.php看起来像这样(我已经试过了循环,但它只是不起作用......):

&#13;
&#13;
<?php 
/**
 * The Template for displaying all single posts.
 */
get_header('header3'); ?>

<section id="headerbox">
	<header>
	  <h2 class="referensrubrik">Rubrik</h2>
	</header>
	  <p class="referenstext">Text</p>
</section>

<?php 
error_reporting(-1);
?>

<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>

    <h1 class="entry-title"><?php the_title(); ?></h1>

    <div class="entry-content">
    
        <?php the_content(); ?>
    
    </div>
</article>

<?php endwhile; ?>
    
<?php get_footer(); ?>
&#13;
&#13;
&#13;

我做错了什么!?

4 个答案:

答案 0 :(得分:1)

我修好了!适用于我的single.php代码如下所示:

&#13;
&#13;
<?php 
/**
 * The Template for displaying all single posts.
 */
get_header('header3'); ?>

<section id="headerbox">
					<header>
						<h2 class="referensrubrik">Rubrik</h2>
					</header>
						<p class="referenstext">Text</p>
				</section>
			
<?php
		$post = $wp_query->post;
		while ($wp_query->have_posts()) : $wp_query->the_post(); ?>
		
		<article id="blogpost" id="post-<?php get_the_ID(); ?>" <?php post_class(); ?>>

		<h2><a href="<?php the_permalink(); ?>" title="Läs mer" class="blogpost"><?php the_title(); ?></a></h2>
		<h5><?php the_time('F jS, Y') ?> <!-- by <?php the_author() ?> --></h5>
		<?php the_content(); ?>
		<hr>
		</article>

		<?php endwhile; ?>

		<?php if ($paged > 1) { ?>

		<nav id="nav-posts">
			<div class="prev"><?php next_posts_link('&laquo; Äldre inlägg'); ?></div>
			<div class="next"><?php previous_posts_link('Nyare inlägg &raquo;'); ?></div>
		</nav>

		<?php } else { ?>

		<nav id="nav-posts">
			<div class="prev"><?php next_posts_link('&laquo; Äldre inlägg'); ?></div>
		</nav>

		<?php } ?>

		<?php wp_reset_postdata(); ?>			
  
<?php get_footer(); ?>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

您的模板标记位于块之外。

<!-- /*
Template Name: Blog Posts
*/ -->

<?php

应该是:

<?php
/*
Template Name: Blog Posts
*/

答案 2 :(得分:0)

确保标签外没有空格或回车(特别是在WP页面模板中):空格/回车将导致页面不能通过抛出异常来渲染(由于你不这样做,你很可能看不到已启用报告)。

具体来说,我指的是:

<!-- /*
Template Name: Blog Posts
*/ -->

它必须位于打开的PHP标记内,并且页面顶部不应有空行。

它应该看起来像(没有空行换行符):

<?php 
/**
 * The Template for displaying all single posts.
 */
require_once('../../../wp-load.php');
get_header('header3'); ?>

答案 3 :(得分:0)

从代码中删除以下行:

require_once('../../../wp-load.php');