我正在WP中构建自己的自定义主题。
在我的index.php
中,我有许多静态内容(不知道如何将它们转换为WP中的动态字段,但我稍后会详细介绍)。
问题是,我想在首页2 posts
中显示一些帖子,并在其下方显示一个链接,将用户重定向到显示整个帖子的blog
页面。
我搜索了很多,但我发现了一个没有做我想要的解决方案,它是关于设置静态front-page
并将blog
页面设置为Posts page
下的settings
1}}然后reading
。
执行此操作后,我index.php
中的整个静态内容不会再显示在homepage
上,而homepage
会变为空白页面,整个内容会转到blog
页面,让我疯狂!!
我想做的一切;是将static
内容和2 of my most recent posts
保留在homepage
中,并创建一个包含整个帖子的blog
页面。
希望为此无插件找到解决方案。
答案 0 :(得分:1)
将此代码段添加到front-page.php
或您要显示最近发布的 2 帖子的位置。此外还有博客页面链接可将用户导航到所有博客帖子。
$the_query = new WP_Query( array( 'post_type' => 'post',
'posts_per_page' => 2,
'orderby' => 'publish_date',
'order' => 'DESC'
)
);
if ( $the_query->have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post();
the_title();
the_excerpt();
the_author();
// add whatever you want
endwhile;
wp_reset_postdata();
echo 'See All Blog Posts Here : <a href='.site_url("blog").'>All Blog Posts</a>';
else :
esc_html_e( 'Sorry, no posts yet published.' );
endif;
?>
答案 1 :(得分:0)
这将是我的问题的详细答案,以帮助任何可能面临同样问题的人,它将涵盖像我这样的WordPress新手的所有步骤! :d
正如我的问题所述,我的问题是我想在index.php
中显示2个帖子,并在单独的blog
页面中包含整个帖子。
最详细的解决方案:
1)转到index.php
并使用正常的帖子循环:
<?php
// The Loop
if ( have_posts() ) {
while ( have_posts() ) {
the_post();
//
// Post Content here
//
} // end while
} // end if
?>
2)从WP信息中心转到Settings
然后Reading
并将Blog pages show at most
值更改为2个帖子或者您想要的任意数量的帖子。< / p>
现在,我们已完成第一步,并在index.php
中仅显示特定数量的帖子,让我们继续显示blog
中的所有帖子页。
3)创建一个名为page-blog.php
的PHP页面。
注意:如果你没有page.php
你必须创建它,有关如何创建自定义PHP页面的更多信息,我推荐@ Adam&#39 ;回答here。
4)转到WP仪表板并创建一个名为blog
的新页面。
5)在您的page-blog.php
中,您需要添加以下代码段:
// Posts Query
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array('posts_per_page' => 6, 'paged' => $paged );
query_posts($args);
// The Loop
if ( have_posts() ) {
while ( have_posts() ) {
the_post();
//
// Post Content here
//
} // end while
} else {
echo "Sorry, There is no posts to be displayed";
} // end if
?>
注意:我们在index.php
中使用了与之前相同的循环,只有循环上方新的2行代码才是我们{{1页面
6)我将page-blog.php
设置为6,因为它是我的posts_per_page
页面,我想在那里显示更多帖子。 将其值设置为您想要的任何数字,这取决于您
7)BOOM,它有效,你就像我一样做了你想做的事情!
这个问题对我来说似乎非常复杂,但是当我搜索并阅读有关此问题的更多信息时,我发现解决问题非常容易,我希望如果您遇到这个问题,这个答案可以帮助您!