lala 发表于 2009-1-10 09:57:40

WordPress的10个杀手级Hack技巧(2)

本帖最后由 dxszzcylm 于 2009-1-31 23:40 编辑

2.避免在多循环中出现重复文章

问题:由于“杂志型”主题的流行,现在很多WordPressy用户在他们的首页上都使用了多个循环,因此他们也迫切需要在第二个循环上避免出现重复文章。
解决方案:使用PHP数组就能轻松解决这一问题
创建一个PHP数组,并把第一个循环的所有文章ID放在其中
<h2>Loop n°1</h2>
<?php
$ids = array();
while (have_posts()) : the_post();
the_title();
?>
<br />
<?php $ids[]= $post->ID;
endwhile; ?>
对于第二个循环:使用PHP函数in_array()来检查$ids数组中是否包含了某个文章ID。如果这个文章ID没有包含在此数组中,意味着第一个循环中没有此篇文章,那么系统就可以显示它了。
<h2>Loop n°2</h2>
<?php
query_posts("showposts=50");
while (have_posts()) : the_post();
if (!in_array($post->ID, $ids)) {
the_title();?>
<br />
<?php }
endwhile; ?>

代码说明:执行第一个循环时,其中的所有文章ID都会被放到一个数组变量中。因此,第二个循环执行时,我们只要到这个数组中检查当前的文章ID是否已显示在第一个循环中就可以了。

dxszzcylm 发表于 2009-1-31 23:41:06

不错的技术文章!
页: [1]
查看完整版本: WordPress的10个杀手级Hack技巧(2)