循环:一个页面上我想容纳的帖子太多了

时间:2012-04-17 作者:Nick Passaro

我正在使用wordpress循环将我的wordpress博客中的帖子调用到我的网站。我设置了我的循环,以获取公文包类别下的10篇最新帖子,并将它们显示在我的公文包页面上。问题是我想显示20个项目,但我不想处理20个图像的加载时间。我曾想过在dreamweaver中创建多个公文包页面,并让每个页面获取一组不同的10篇文章,但这违背了使用wordpress来加快页面更新速度的目的。

有什么方法可以设置它,以便当我点击“下一步”时,页面刷新为下一组十篇文章,当我点击“后退”时,页面刷新为前十篇文章?

我看到过类似www.example的网页。com/投资组合。php?分页=2

这是我调用循环的标题

define(\'WP_USE_THEMES\', false);
require(\'./wp/wp-load.php\');
query_posts(\'category_name=portfolio&posts_per_page=10\');
这是循环在页面上的位置

<?php while (have_posts()): the_post(); ?>
<?php the_content(); ?>
<?php endwhile; ?>
如有任何建议,将不胜感激。

1 个回复
SO网友:Gavin Anderegg

你在寻找两件事中的一件:要么paginate_links(), 或以下各项的组合next_posts_link()previous_posts_link(). 这两种功能都允许“分页”,或者能够放置指向比屏幕显示更多内容的链接。例如,谷歌在大多数页面的底部都会这样做。在我上面提到的两种方法中,我建议使用next_posts_link()previous_posts_link(), 但我会把它们都说出来。

使用paginate\\u links()

我不经常使用此函数,因为它无法对链接的显示方式进行控制。然而,它很容易使用,它显示了一个中间内容的数字列表,类似于谷歌(例如)对结果页链接进行编号的方式。

默认情况下,如果您有一个返回更多结果的查询,那么您应该能够在循环后插入以下内容:

<?php echo paginate_links() ?>
有关更多选项,您可以look over the documentation page here.

使用next\\u posts\\u link()和previous\\u posts\\u link(),我通常更喜欢这种方法,因为我可以更好地控制用它生成的链接的样式。具体来说,因为我可以提供链接周围的标记,并使用CSS设置标记的样式。

以下是我如何在项目中使用此功能的示例:

<?php if ($wp_query->max_num_pages > 1): ?>
    <div id="nav-below" class="navigation">
        <div class="nav-previous"><?php next_posts_link(\'&larr; Older posts\'); ?></div>
        <div class="nav-next"><?php previous_posts_link(\'Newer posts &rarr;\'); ?></div>
    </div>
<?php endif; ?>
与上面的paginate\\u links()一样,此代码需要放在循环下面。

结束

相关推荐

protect user submitted posts

我有一个网站,我正在工作。我创建了一个html表单,并输入了一些代码,这些代码将获取表单数据并创建一个新的wordpress帖子。它会将信息发布到特定类别。一切正常。现在我想知道我能做些什么来保护输入的数据?我应该使用php并为每个输入编写pregmatch语句吗?我的表格上有7种不同的输入。我想wordpress已经有了一些功能,可以用来验证数据,以确保有人没有对我的表单做任何坏事。将填写此表单的用户将不会注册或登录。