一,首先需要将tag自动显示出自身的ID,这一点可以通过函数实现,将下面这段代码放到主题的functions.php文件当中:
//获得当前 TAG 标签 ID
function get_current_tag_id() {
$current_tag = single_tag_title('', false);//获得当前 TAG 标签名称
$tags = get_tags();//获得所有 TAG 标签信息的数组
foreach($tags as $tag) {
if($tag->name == $current_tag) return $tag->term_id; //获得当前 TAG 标签 ID,其中 term_id 就是 tag ID
}
}
二,其次,就是在自定义模板当中放入调用代码:
//调用文章的特色图像,如果没有,则调用默认图像
<?php
function catch_that_image() {
global $post, $posts;
$first_img = '';
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
$first_img = $matches [1] [0];
if(empty($first_img)){ //Defines a default image
$first_img = "http://localhost/default.jpg";
}
return $first_img;
}
?>
//调用参数
<?php
$args=array(
'include' => '113,100,119,118,109,110,116' //可指定单个tag的ID或是多个tag的ID,中间用英文逗号间隔
);
$tags = get_tags($args);
// 循环所有标签
foreach ($tags as $tag) {
// 得到标签ID
$tagid = $tag->term_id;
// 得到标签下所有文章
query_posts("showposts=-1&tag_id=$tagid");
if(have_posts()) : while (have_posts()) : the_post();
?>
//列表模版
<li>
<div class="article">
<!-- 输出标签标题及链接 -->
<h2>标签: <a href="<?php echo get_tag_link($tagid);?>" title="<?php echo $tag->name?>"><?php echo $tag->name; ?></a></h2>
<div class="articleHeader">
<h1 class="articleTitle"><a href="<?php the_permalink();?>"><?php the_title();?></a></h1>
</div>
<div class="articleBody clearfix">
<!--缩略图-->
<div class="articleThumb">
<a href="<?php the_permalink();?>"><img src="<?php echo catch_that_image(); ?>" alt="<?php the_title();?>" title="<?php the_title();?>"></a>
</div>
<!--摘要-->
<div class="articleFeed">
<p><?php echo mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 520,"……"); ?>
</p>
</div>
</div>
<div class="articleFooter clearfix">
<ul class="articleStatu">
<li><i class="fa fa-calendar"></i><?php echo get_the_time('Y-m-d') ?></li>
<li><i class="fa fa-eye"></i><?php if(function_exists('custom_the_views') ) custom_the_views($post->ID); ?>次浏览</li>
<li><a href=""><i class="fa fa-folder-o"></i><?php the_category(’, ‘) ?></a></li>
</ul>
<a href="<?php the_permalink();?>" class="btn btn-readmore btn-info btn-md">阅读更多</a>
</div>
</div>
</li>
<?php endwhile; endif; wp_reset_query(); ?>
<?php } ?>
第二步当中的调用特色图像部分,可有可无,视具体情况而定,如果能正常调用特色图像,那这部分的调用特色图像功能可忽视.
评论