wordpress数据库插件

怎样给wordpress网站模板,添加最新文章、随机文章、热评文章?

在前面的章节中,我们已经为wordpress网站模板的首页添加好了头部和左侧主体部分的内容代码,实现了wordpress全站文章列表的调用和分页效果。本节,我们再来对wordpress网站的首页模板的右侧边栏进行修改。一般情况下,wordpress博客主题模板的右侧边栏会有“最新文章、随机文章、热评文章、热门标签、热点文章”这几种内容列表。今天我们就为wordpress模板侧边栏添加“最新文章、随机文章、热评文章”这3个内容(如下图效果)。一起来看看吧。

?一、给wordpress模板侧边栏添加最新文章。

打开wordpress主题的侧边栏模板文件sidebar.php,在里面添加如下代码:

< div class="right_new">< h3>最新文章</h3>< ul><?phpquery_posts('cat=0&posts_per_page=5&caller_get_posts=1&orderby=new'); //开始查询。while (have_posts()) : the_post(); //循环查询结果。echo '< li>< a href="'.get_the_permalink().'" title="'.get_the_title().'">';echo get_the_title().'</a></li>';endwhile; wp_reset_query(); //结束查询。?></ul></div>

这段代码中,我们再次用到了wordpress循环代码,这个在首页文章列表中有介绍,这里就不多说了。这里还使用了一个函数——query_posts(),这个函数的功能是从wordpress网站的数据库wp_posts数据表中查询文章列表。

上面的query_posts()函数用到了4个参数:

cat=0:指定文章列表的分类ID,即调用哪个分类的文章。0表示所有分类。posts_per_page=5:表示调用几篇文章。caller_get_posts=1:表示排除置顶文章。orderby=new:表示按最新排列。

还要注意一点:使用query_posts()函数查询后,我们还要在循环语句后面添加wp_reset_query()来结束查询。

二、给wordpress模板侧边栏添加随机文章。

在wordpress网站的公共侧边栏文件sidebar.php文件中,添加如下代码:

< div class="right_new">< h3>随机文章</h3>< ul><?php$arr = array('cat'=>'119', //只调用分类ID是119分类下的文章。'posts_per_page'=>5,'caller_get_posts'=>1,'orderby' => 'rand' //这里的rand表示随机调用。);query_posts($arr); //参数是一个数组。while (have_posts()) : the_post(); echo '< li>< a href="'.get_the_permalink().'" title="'.get_the_title().'">';echo get_the_title().'</a></li>';endwhile; wp_reset_query(); ?></ul></div>

在最新文章中,query_posts()函数的参数是一个字符串,跟其它wordpress函数一样,query_posts()的参数也可以是一个数组,所以,在随机文章中调用代码中,我们使用了数组参数。

三、给wordpress模板侧边栏添加评文章。

所谓热评文章,就是按照wordpress文章的评论的多少来对文章列表进行排序。在wordpress网站的sidebar.php侧边栏文件中,添加如下代码:

< div class="right_new">< h3>热评文章</h3>< ul><?php$arr = array( 'posts_per_page'=>5,'caller_get_posts'=>1,'orderby' => 'comment_count' //按照文章的评论数量来排序);query_posts($arr); while (have_posts()) : the_post(); echo '< li>< a href="'.get_the_permalink().'" title="'.get_the_title().'">';echo get_the_title().'</a></li>';endwhile;wp_reset_query(); ?></ul></div>

通过上面的三步,我们就为wordpress网站模板的侧边栏添加好了“最新文章、随机文章、热评文章”的调用代码,是不是很简单。这里重点用到了query_posts()查询函数和wordpress的循环函数语句。在后面的章节中,我们再来介绍如何添加“热点文章和热门标签”。

如果你有什么不懂的,或者想要了解什么,可以在下面的评论中给我留言。同时,欢迎【关注】我。

wordpress文章数据表wp_posts中的post_type字段

打开你的数据库,看看wp_posts表,你就会看到post_type字段,这个字段是干啥用的呢,其实是定义你发布文章的类型,你可以看到每条数据都有一个类型,来表示你的发布的文章是哪种的。

wordpress默认文章类型

wordpress中有如下的几种文章类型。

Post 文章
Page 页面
Attachment 附件
Revision 文章版本
Navigation Menu Item 导航菜单

除了这些默认文章类型,我们还可以通过register_post_type() 函数注册自定义文章类型,这样就可以添加自己想要类型的文章啦。

理解默认文章类型

文章类型

用途

备注

Post

博客文章

核心文章类型

Page

静态页面

用来显示一个内容比较固定的页面,文章可以有父级页面,每个父级页面可以有多个子页面。

Attachment

文章附件

上传到某篇文章的媒体将会附加到这篇文章,作为这篇文章的附件,该媒体的 post_parent 字段将被设置为这篇文章的 ID,在多媒体上传页面上传的媒体没有附加到文章, post_parent 为空,guid 字段用来存储媒体文章的 URL。

Revision

文章版本

每个版本都被附加到一篇文章,版本的post_parent字段为所附加到文章的文章 ID。

Navigation Menu Items

导航菜单

每个菜单都包含若干个导航菜单项目,每个项目被保存为一条文章记录,menu_order 字段用来记录菜单的顺序,其他附加数据,如打开方式、父级菜单保存在 wp_postmeta 数据表中。

如上表所见,post_parent 是一个非常重要的字段,该字段存储着不同文章之间的父子关系,包括:

父级页面和子页面
每个文章的修订版本
附件和附件所附加到的文章
在自定查询中,我们有很多地方需要用到 post_parent 字段,例如:查询指定页面的子页面,下面的例子中 ID 是一个数字,字父级页面的 ID。

‘post_parent’ => ‘ID’
同样,我们也可以使用类似的方式显示附加到一篇文章的所有附件,或者查询没有附加到任何文章的附件(在多媒体管理界面上传的媒体通常没有附加到文章),查询这一类数据,只需要把 post_parent 的值设置为0就可以了:

‘post_parent’ => 0
对修订版本的查询我们不太可能用到,在这里就不多说了。

另外,我们可以使用 post_parent_in ,该参数的值为一个数组,用来查询一组文章或页面的子页面,由此可见理解这个post_type类型可以帮我们做出多种不同类型的文章页面。