感谢 Yofox 同学的投稿
提示:使用 query_posts 来控制日志的调用。
它允许你控制日志显示的内容、显示的位置、显示的方式。这个强大的函数可以帮助你完成个性化设计。
调用最新日志列表:
下面的代码将显示最新的 5 篇日志:
< ?php query_posts('showposts=5'); ?>
-
< ?php while (have_posts()) : the_post(); ?>
- < ?php the_title(); ?>
< ?php endwhile;?>
调用特定日志列表:
假设 ID 为 2 的目录是你的特别目录,你想在侧边栏中显示该目录下的 5 篇最新日志:
< ?php query_posts('cat=2&showposts=5'); ?>
-
< ?php while (have_posts()) : the_post(); ?>
- < ?php the_title(); ?>
< ?php endwhile;?>
调用排除特定的目录:
你可以使用 query_posts 来排除显示特定目录的日志,下面的代码将排除 ID 为 2 的目录,请注意 ID 前面的负号:
< ?php query_posts('cat=-2'); ?>
-
< ?php while (have_posts()) : the_post(); ?>
- < ?php the_title(); ?>
< ?php endwhile;?>
总结:如果要调用多个分类下的文章,使用例如”cat=2,3,4″。(不含引号),如果要排除多个分类下的文章,同样是使用例如”cat=-2,-3,-4″。(不含引号)
再次感谢 Yofox 的投稿,如果你喜欢他制作的 WordPress 主题,请到 Yofox 的博客去瞧瞧吧
2008年11月10日 上午11:22 沙发
我只说俩字:“沙发”!
2008年11月10日 上午11:42 板凳
不错,很好很强大!
2008年11月10日 下午12:22 地板
好,又多知道一种调用日志的方法,收藏起来备用。
2008年11月10日 下午2:00 4楼
老孔速度快阿。这个函数确实很强大
2008年11月10日 下午8:42 5楼
@EaSy 哈哈,easy你也不慢哦
2008年11月10日 下午11:36 6楼
比较适合对代码比较熟悉的人来搞
2008年11月11日 上午12:16 7楼
这回没发现什么问题!再看看去!新主题!不错!顶!
2008年11月11日 上午12:50 8楼
哦 卖糕的.WPS换新主题了,眼睛一亮~~~~我喜欢..VC喜欢!
2008年11月11日 上午9:58 9楼
强大,很强大,貌似这个函数跟wp-pagenavi有冲突吧?
2008年11月11日 上午11:09 1层
@菠菜 嗯,用new WP_Query就没有冲突,不需要分页的时候可以用这个函数
2008年11月11日 上午11:26 10楼
这个文章好
2008年11月11日 下午12:08 1层
@rain 服务器好了,到处逛也乐了
2008年11月12日 上午11:21 2层
@辐射鱼 为什么经常无缘无故访问不了?
2008年11月11日 上午11:33 11楼
好文
2008年11月21日 上午10:44 12楼
多谢 很有用阿
2008年12月31日 下午8:52 13楼
query_posts(“author=1”) 调用作者编号为1的日志
2009年5月20日 上午4:43 14楼
显示一条用query_posts(‘showposts=1&cat=7,11’)但我想显示0条用query_posts(‘showposts=0&cat=7,11’)却显示了全部,那显示0条怎样表达
2009年6月8日 下午9:18 15楼
不错。收藏了,
2009年11月1日 下午6:01 16楼
可以
2011年6月10日 下午2:21 17楼
http://wpdocs.sourceforge.jp/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%82%BF%E3%82%B0/query_posts
2011年6月10日 下午2:24 18楼
post_mate的值检索
if ($_GET[‘key_f’]){//
$query_string = “posts_per_page=-1&post_type=post&meta_key=ShopPrefix&meta_value={$_GET[‘key_f’]}”;
$args = $query_string;
// $shops = query_posts($query_string);
$title = $_GET[‘key_f’].’ 行’;
} elseif ($_GET[‘key_a’]){//
$Alphabet = array(‘A’ => array(‘A’,’B’,’C’,’D’,’E’,’a’,’b’,’c’,’d’,’e’),
‘F’ => array(‘F’,’G’,’H’,’I’,’J’,’f’,’g’,’h’,’i’,’j’),
‘K’ => array(‘K’,’L’,’M’,’N’,’O’,’k’,’l’,’m’,’n’,’o’),
‘P’ => array(‘P’,’Q’,’R’,’S’,’T’,’p’,’q’,’r’,’s’,’t’),
‘U’ => array(‘U’,’V’,’W’,’X’,’Y’,’Z’,’u’,’v’,’w’,’x’,’y’,’z’),
);
$title = array(‘A’ => ‘A~E’ , ‘F’ => ‘F~J’ , ‘K’ => ‘K~O’ , ‘P’=>’P~T’,’U’ =>’U~Z’);
if ($Alphabet[$_GET[‘key_a’]]){
$args = array(
‘post_type’ => ‘post’,
‘meta_query’ => array(
array(
‘key’ => ‘ShopPrefix’,
‘value’ => $Alphabet[$_GET[‘key_a’]],
‘compare’ => ‘IN’
),
)
);
// $shops = query_posts($args);
$title = $title[$_GET[‘key_a’]];
}else{
$query_string = “pagename=sbi_shop”;
}
} elseif ( $_GET[‘key_n’]){
$num = array( 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 ,9 );
$args = array(
‘post_type’ => ‘post’,
‘meta_query’ => array(
array(
‘key’ => ‘ShopPrefix’,
‘value’ => $num ,
‘compare’ => ‘IN’
),
)
);
// $shops = query_posts($args);