与WordPress BLOG主题模板不同,wordpress CMS主题模板的布局相对来说要美观一些,会在首页布局上有不同的模块,如:幻灯模块、滑动门模块、选项卡模块、分类列表模块等。本章我们来介绍一下wordpress CMS主题首页的分类列表模块的实现,如下图的效果:
第一步:设置需要在首页显示的分类的ID
这个一般在wrodpress CMS主题的后台主题设置里设置,然后在模板代码中获取这个设置里的数据。本节,就直接在模板中设置,代码如下:
$cids = array( 1, 2, 3, 4 ); //这里设置了4个分类ID:1、2、3、4
第二步:循环调用分类:
通过for循环来循环这个$cids数组,获取分类ID,代码如下:
for($a=1; $a<=$len; $a++){
$cid = $cids[$a-1]; //当前分类ID//这里调用每一个分类的文章
}
第三步:再在for循环中通过query_posts()来查询每个分类下的文章列表,全部代码如下:
<?php //首页分类布局开始
$cids = array( 1, 2, 3, 4 ); //这里设置了4个分类ID:1、2、3、4
$len = count($cids); //获取数组长度
for($a=1; $a<=$len; $a++){ //循环获取分类ID
$cid = $cids[$a-1]; //当前分类ID
?>
更多
<?php
query_posts('posts_per_page=4&caller_get_posts=1&orderby=modified&cat='.$cid);
while (have_posts()) : the_post();
echo '';
if (has_post_thumbnail()) { //如果缩略图存在,就调用缩略图
the_post_thumbnail( 'thumbnail',array( 'alt' => trim(strip_tags( $post->post_title )), 'class' => 'home-thumb'));
}else { //如果缩略图不存在,就调用catch_first_image()方法获取第一张图或默认图
echo '';
}
echo ''.$post->post_title.'
';
echo '';
endwhile;
wp_reset_query();
?>
<?php
query_posts('posts_per_page=12&caller_get_posts=1&orderby=rand&cat='.$cid);
while (have_posts()) : the_post();
echo ''.$post->post_title.'';
endwhile;
wp_reset_query();
?>
通过上面的代码,我们就为wordpress CMS主题的首页添加了 循环分类文章列表的布局。当然,在我们循环调用这些分类列表时,可以让不同的分类模块显示不同的效果,也可以在多个分类模块之间插入广告或其它代码模块…… ,这些都是可以轻松实现的,可以看一下本站的首页,分类模块是先按大分类布局,然后,再在这个大分类模块里调用大分类的子分类模块,这就实现了整体布局的多样性,使WordPress主题更加的炫。当然,wordpress主题布局越复杂、调用越多,对打开速度是有一定影响的,这也就正应了一句话:鱼与熊掌不可兼得。具体,可以根据自己的需求来开发我们自己的wordpress CMS主题。