WordPress输出文章最常见的函数是query_posts(),但query_posts()不是唯一的方式,而且乱用query_posts()不是一个好习惯。get_posts()或者WP_Query也可以达到相同的作用。看了一篇文章,描述了这三者的区别。
目录
query_posts()
query_posts()主要用来输出主循环,并且会创建很多全局变量。因此不适合到处使用,最佳使用场所就是输出主循环,别的地方能不用就不要用。如果一定要用,记得在输出结果以后使用wp_reset_query()函数重置查询结果,防止意外修改主循环和全局变量产生一堆莫名其妙的错误。
get_posts()
get_posts()的机制与query_posts()类似,参数也相同,是一种简单的获取文章的方法,get_posts()不会产生全局变量,不影响主循环,非常安全。如果要在主循环之外输出最新文章、特色文章等,不妨考虑用这个。
//get_posts参数 <?php $args = array( 'numberposts' => 5, 'offset' => 0, 'category' => , 'orderby' => 'post_date', 'order' => 'DESC', 'include' => , 'exclude' => , 'meta_key' => , 'meta_value' => , 'post_type' => 'post', 'post_mime_type' => , 'post_parent' => , 'post_status' => 'publish' ); ?>
WP_Query
WP_Query是前两个函数的基础,使用起来更复杂,但限制也少。适合创建功能比较特殊的自定义循环,也完全可以取代上面两个函数。
关于上述三者的区别,在WordPress Answers网站有很好的讨论,感兴趣的不妨看一下,对于WordPress的数据库交互机制,Sola还有很多不明白的地方,还要努力研究一下。但query_posts()绝对不是一个想用就能用的功能,乱用这个函数可能产生严重的错误。
关于WordPres Answers
在此严重推荐一下WordPress Answers这个网站,是Stack Overflow的姊妹站,只要你的问题是关于WordPress的,就会有一群认真的人给出负责的答案,灌水、或者偷懒问一些已经回答过的问题,都会被close。在国内很难找到这样干净专业的地方啊,如果能看懂英文,还是到这里混吧。
你好,我找了半天没有找到留言页面,于是在这里想请教博主一个问题,贵站右下角的弹出推荐是如何实现的呢。求指导
你好,页面底部用插件实现的,叫做upPrev,其实就是翻页功能,http://wordpress.org/extend/plugins/upprev/
多谢。我也去试试。博主的相关文章插件又是用的哪个吖。貌似不是无觅的样子。
这个插件的Related Posts (YARPP)要怎么设置吖
设置->关联文章(YARPP)页面,点击屏幕右上角的显示选项,勾选所有的checkbox调出高级设置,在关联设置里有一项叫匹配值,把匹配值设置的低一点,比如设成1就可以,匹配值太高可能出现无相关文章的结果。其它的用默认设置就行了。
在显示设置里勾选自动插入关联文章,相关文章就会自动显示在文章后面。
也提供了相关文章的widget,可以放在侧栏里
关联联文章(YARPP)页面?纠结了,好像没有找到。纠结了。。。
我这边只有Apperance、Content、Links、Cache、Mobile devices这几个。。。
怎么菜单那么少,没有settings菜单吗?难道你在用wordpress.com或者类似的blog提供商?