简介
sidebar侧边栏在网站里起到重要的作用,几乎所有的页面都有个侧边栏。不同的页面可能调用不同的侧边栏,wordpress如何区分不同的侧边栏呢,我们看下图的侧边栏命名就知道它是如何区分侧边栏了。调用时,增加参数来区分调用的是哪个模板。
?phpget_sidebar(home);?
?phpget_sidebar(left);?
wordpress通过get_sidebar(参数)来调用展示侧边栏。本篇文章我们只介绍其中一个。
图1
sidebar制作
sidebar-left.php的内容如下所示,我们主要介绍下几个wordpress内嵌的函数。
divclass
?php
$singleurl=get_permalink($post_id);//获取post_id的文章链接,singleurl就是该文章具体链接地址,点击左侧文章,会传递post_id值,通过get_permalink函数可用
$cats=wp_get_post_categories($post-ID);//获取这篇文章的类别
if($cats){//如果类别不为空
$args=array(//参数设置
category__in=array($cats[0]),//定义类别
showposts=50,
caller_get_posts=1,
order=ASC//排序规则
);
query_posts($args);//查询该类别下的所有文章
if(have_posts())://如果文章列表不为空
while(have_posts())://循环所有文章
the_post();
update_post_caches($posts);
?
li?phpif(get_permalink($post_id)==$singleurl){?class=video-curry?php}?ahref=?phpthe_permalink();??phpthe_title();?/a/li//展示文章标题,同时带有文章的链接地址
?phpendwhile;else
li暂无文章/li
?phpendif;wp_reset_query();}?
/div
详细讲述下面两个函数的使用。
1、WordPress的have_posts()是一个全局函数。
have_posts函数被调用时实际上是调用全局变量$wp_query-have_posts()成员函数,检查一个全局数组(array)变量$posts的一个循环计数器,以确认是否还有post,如果有返回true(1),如果没有返回false(0)。
2、the_post函数则调用$wp_query-the_post()成员函数前移循环计数器,并且创建一个全局变量$post(不是$posts),把当前的post的所有信息都填进这个$post变量中,以备接下来使用。
上述代码主要展示了某个类别下的所有文章,在左侧列表展示。如下就是C++类别所有的文章。
图2
总结
本文介绍了侧边栏的案例,循环展示某类别文章的所有文章标题,点击文章,会跳转到该文章的具体链接。其中用到wordpress里的一些函数,所以wordpress有很多自带的函数,同学们可用自行查询,想实现什么功能,具体调用wordpress的什么函数,都有相对应的函数。
我们下节课见!