为什么2个主页的布局不同。
当我把http://localhost/mysite/home/
布局看起来不错,博客列表就在那里。。这里没有问题。。但当我点击主页时,它会自动转到这个url。。。
http://localhost/mysite/
博客帖子列表也不见了。。。
我创建了一个名为“主页”的页面,它使用自定义模板。。。并将其设置为位于“设置>>阅读”中的“首页”
这是我的自定义模板的代码。。。
<?php /*
Template Name: List BLog
*/ ?>
<?php get_header(); ?>
<?php if ( has_post_thumbnail() ) { ?>
<div class="featured">
<?php the_post_thumbnail(); ?>
</div>
<?php } ?>
<div class="divider"></div>
<?php genesis_before_content_sidebar_wrap(); ?>
<div id="content-sidebar-wrap">
<?php genesis_before_content(); ?>
<div id="content" class="hfeed">
<?php genesis_before_loop(); ?>
<?php query_posts( $args ); ?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<div <?php post_class() ?> id="post-<?php the_ID(); ?>">
<h2><a href="<?php the_permalink() ?>">
<?php the_title(); ?>
</a></h2>
<div class="postmetadata"> Posted in:
<?php the_category(\', \') ?>
|
<?php comments_popup_link(\'No Comments »\', \'1 Comment »\', \'% Comments »\'); ?>
</div>
<div class="entry-content">
<?php the_excerpt(); ?>
</div>
</div>
<?php endwhile; ?>
<?php else : ?>
<h2>Not Found</h2>
<?php endif; ?>
<?php genesis_after_loop(); ?>
</div>
<!-- end #content -->
<?php genesis_after_content(); ?>
</div>
<!-- end #content-sidebar-wrap -->
<?php genesis_after_content_sidebar_wrap(); ?>
<?php get_footer(); ?>
我不知道发生了什么事。帮助
最合适的回答,由SO网友:s_ha_dum 整理而成
在中设置为“首页”的页面Settings -> Reading
会出现在这里--http://localhost/mysite/
-- 不管它的地址是什么。我不知道你是要那个地址还是这个地址,不过:http://localhost/mysite/home/
我知道模板坏了。这个$args
此处为变量:
query_posts( $args );
。。。未设置,因此查询不返回任何内容,因此“博客文章列表已消失”。
其中有许多genesis函数。我不确定他们做了什么,但也许这就是模板在这里工作的原因--http://localhost/mysite/home/
-- 但不是在这里--http://localhost/mysite/
... _如果我没看错你的话。
您应该知道,使用query_posts
在这样的模板中,表单非常糟糕。它会导致对数据库进行第二组查询,使其效率非常低。There is a note in the Codex:
应该注意的是,使用它来替换页面上的主查询可能会增加页面加载时间,在最坏的情况下,所需工作量会增加一倍或更多。虽然该函数易于使用,但以后也容易出现混淆和问题。有关详细信息,请参阅下面关于注意事项的注释。
再说一次,我不太确定你想要完成什么,但我认为you should be using either home.php
or front-page.php
for this purpose 而不是创建一个页面并将其设置为“首页”。如果您想要一个仍然有可编辑内容的静态首页,那么您所做的将是一个很好的方法。显示博客列表有点不合适。