Typecho 搭建的一个站的文章标题颜色按照分类来显示,也就是不同分类,文章标题的颜色就会不同,刚开始想用<?php if ($this->is(‘category’,’news’)): ?>
,但是想了下,这个只是判断当前页面是不是news分类下面的,并不能达到我的要求,事实也证明我用此判断然后输出样式没有成功。
那怎么搞呢?typecho群里的宅给我提醒了,直接class="<?php echo 分类缩略字 ?>"
,试了下 <?php $this->category(','); ?>
不行,因为那个直接就输出分类的链接了。不过答案很快就给我找到了,<?php echo $this->category; ?>
就可以了。
下面说说具体怎么用吧,如果你想在index页面,让文章标题的颜色根据分类显示,那么就打开你的模板文件夹下的index.php文件
将
<h2 class="entry_title"></h2>
替换为
<h2 class="entry_title">
<a href="<?php $this->permalink() ?>" class="<?php echo $this->category; ?>"><?php $this->title() ?></a>
</h2>
这样就会在index页面的每篇文章里加上class=”分类缩略名”,然后我们就可以用这个来修改css样式了
打开你的主题文件夹下style.css文件来定义css,比如我的一个分类是news,想把分类下文章标题都变成红色的,那么添加代码
.news{color:red;}
同理,你也可以将archives.php,以及post.php等页面都照此法处理。
———————————注意—————————–
据我观察,如果一篇文章属于多个分类,那么用<?php echo $this->category; ?>
只能输出一个分类缩略名,暂时还没找到更好的办法。