如何将帖子列表添加到页面模板?

时间:2014-10-02 作者:Томица Кораћ

我需要创建一个页面,该页面将在右栏中包含静态内容,并在左栏中列出博客帖子。静态内容需要从仪表板>页面>页面进行编辑。我该怎么做?

1 个回复
最合适的回答,由SO网友:Medardaosa 整理而成

在wp内容/主题/主题文件夹中,您需要创建自己的页面模板。。。

自定义页面模板

在刚创建新文件的文件夹中,您应该会看到一个名为PAGE的文件。php。通过选择编辑文件来打开该文件,然后复制其中的所有内容。

然后,在页面的最顶端,需要将一些代码放入文件中,并为模板命名。在下面的示例中,我将模板命名为“Test”;

<?php
/* 
Template Name: Test 
*/
?>
现在,您可以开始定制了。

两列

如果您还没有HTML模板,可能是这样的:

<div id="wrap-page">
    <div class="left">
        LIST BLOG POSTS HERE
    </div>
    <div class="right">
        CONTENT EDITABLED FROM ADMIN → PAGES → YOUR PAGE
    </div>
</div>
CSS示例:

#wrap-page {
    width: 100%;
}
.left { 
    width: 50%;
    float: left;
}
.right {
    width: 50%;
    float: right;
}
或者别的什么。

在左侧列中添加博客帖子列表,您需要自定义查询:

<?php query_posts(array(\'post_type\' => \'post\',\'orderby\' => \'date\')); 
    if(have_posts()) : while(have_posts()) : the_post();
    // do something
    endwhile; else:
    // no posts found
    endif; wp_reset_query();
?>
页面内容使用以下代码调用页面内容:

<?php
    if ( have_posts() ) : while ( have_posts() ) : the_post();
    // do something
    endwhile; else:
    // no posts found
    endif;
?>
现在你拥有了你所需要的一切。在管理区域,为页面选择新的自定义模板,就完成了。如果有帮助,下面是整个模板的一些示例:

整个自定义页面模板示例

<?php
/* 
Template Name: Test 
*/
?>

<?php get_header(); ?>

<div id="wrap-page">
    <div class="left">

        <?php query_posts(array(\'post_type\' => \'post\',\'orderby\' => \'date\')); 
              if(have_posts()) : while(have_posts()) : the_post(); ?>

            <?php the_post_thumbnail(); ?>
            <h3><?php the_title(); ?></h3>
            <?php the_content(); ?>

       <?php endwhile; ?>
       <?php else : ?>

            <p>sorry no results</p>

       <?php endif; wp_reset_query(); ?>

    </div>
    <div class="right">

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

            <h3><?php the_title(); ?></h3>
            <?php the_content(); ?>

        <?php endwhile; ?>
        <?php else : ?>

            <p>sorry no results</p>

       <?php endif; ?>

    </div>
</div>

<?php get_footer(); ?>
祝你好运。

结束

相关推荐

1 post, 2 templates

我想能够呈现两种不同的风格(2个模板)后。例如,假设我有post ID 133,我希望有两个url来访问它,因此它会呈现不同模板应用的位置。洛雷姆。com/render1/133。com/render2/1333,例如。。。或者可能是这样的:洛雷姆。com/post/133和lorem。com/post/133?模板=2您将如何操作?