我正在尝试为Wordpress网站编写一个模板,用作静态首页(包含一些动态内容)。我创建了页面,并将其设置为使用我的“主页”模板(保存在frontpage.php
中)。此frontpage.php
文件与我的page.php
文件相同,用于显示“关于”和“联系人”等网页。但是,当我转到我的首页时,它会显示所有三个页面的内容:主页,关于和联系。
似乎Wordpress循环只是在About和Contact上获取单个页面的内容,在我访问Home时获取所有页面的内容。可能导致这种情况的原因是什么?
我的page.php
看起来像这样:
<?php get_header(); ?>
<div id="content">
<?php while(have_posts()) : the_post() ?>
<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
<h2 class="entry-title"><?php the_title(); ?></h2>
<div class="entry-content">
<?php the_content(); ?>
</div><!-- .entry-content -->
<?php edit_post_link('Edit', '<p>', '</p>'); ?>
</div><!-- #post-<?php the_ID(); ?> -->
<?php endwhile; ?>
</div><!-- #content -->
<?php get_footer(); ?>
[使用Wordpress 3.2.1。]
答案 0 :(得分:0)
因为你有while循环,它会在while循环之前显示所有页面,更改以下代码以改变查询。
<?php get_header(); ?>
<div id="content">
<?php
query_posts('p=5');//substitute 5 with the front page id
while(have_posts()) : the_post() ?>
....the same...
希望它有所帮助。
答案 1 :(得分:0)
您可能需要在“设置 - &gt;阅读”中查看Wordpress管理员。默认情况下,主页是文章列表,您需要将其更改为静态页面。希望这可能会解决您的问题!
我构建的Wordpress网站的示例下面有一个名为Homepage
的静态页面作为首页:
答案 2 :(得分:0)
最后,我无法弄清楚出了什么问题。我已经创建了一个名为Home的静态页面,在page-home.php
中为其创建了一个自定义模板,并将index.php
重定向到主页的网址,如下所示:
<meta HTTP-EQUIV="REFRESH" content="0; url=<?php bloginfo('url'); ?>/home/">
它并不理想,但效果非常好。