这里部落先说一下,wordpress获取置顶文章列表的方法,其产只要一小段代码就能搞定,内容如下:
补充说明一下,部落之前的主题,就是使用的下面的代码:
$sticky = get_option("sticky_posts");
rsort( $sticky );
$sticky = array_slice( $sticky, 0, 1);
query_posts( array( "post__in" => $sticky,"posts_per_page" => 2,
"caller_get_posts" => 1 ) );
if (have_posts()) :while (have_posts()) : the_post();?>
" title="">
这段代码很好理解,我们就是通过query_posts来获取文章的,这个函数的作用就是对文章进行检索、挑选、排序,在其后的LOOP循环中使用经过挑选、排序的文章.
参数用一个数组的形式放在$query_post中,关键的参数为"post__in" =>get_option("sticky_posts")和"caller_get_posts" => 0。
"post__in" => get_option("sticky_posts")
确定了该LOOP调用的是置顶文章列表。"caller_get_posts"的作用是排除非指定性文章,即除了置顶文章之外,不显示其他的文章.
不添加的情况下,如果置顶文章条目不足"posts_per_page"规定的值,会用最新文章替补完整.
部落操作后,下图中第一篇文章为置顶过的文章,第二篇为最新文章.
部落的作法其实很简单,只是去掉了一段代码,那就是
"caller_get_posts" => 1
当您的站内没有文章置顶时,则默认显示最新文章.这种情况,我们一般主要是因为广告原因来调整.
当然,在您查看具体的效果时,一定要注意清除缓存,特别是安装了WP Super Cache插件的朋友.
另外,检查当前文章是否置顶用is_sticky($post_id) 不带参数时,主要用来在循环输出文章列表中时,用来判断当前$post_id是否是置顶文章;带参数则是判断给定的$post_id是否是置顶文章.
再实例说明一下,is_sticky(10) 是判断 $post_id为 10的文章是否是置顶文章,而不是说所有置顶文章中post_id为 10的置顶文章.
小结
今天因为这样一个小问题,纠结了好一会儿,其实要解决,也就是一分钟的事情,这里自己做个笔录,以给下次好查询.
wordpress主题|wordpress函数get_option(‘sticky_posts’)与置顶文章例子
http://m.bbyears.com/wangyezhizuo/95836.html
推荐访问:wordpress教程 wordpress大学