芒果小站

/* 336x280*/

WordPress 中,需要根据不同页面(如分类页、存档页、文章页等)分别加载不同 CSS,从原理上说,只需利用 WordPress 系统函数作一些简单判断即可实现。

以分类页面为例,原先的 CSS 加载代码如下:

<link rel="stylesheet" type="text/css" href="style.css" />

CSS 文件随分类改变,需要用 PHP 实现动态变化,代码如下:

<link rel="stylesheet" type="text/css" href="<?php foreach((get_the_category()) as $cat){echo $cat->cat_ID;}?>.css" />

标红部分获得分类 ID 编号,不同的分类 CSS 保存为“分类 ID.css”的形式即可。如果要获得别名,则判断代码为:

<?php foreach((get_the_category()) as $cat){echo $cat->category_nicename;}?>

注意:get the category 可以获取 cat_ID(分类 ID)、cat_name(分类名)、category_nicename(分类缩略名)、category_description(分类描述)、category_parent(分类层级)以及 category_count 等数据值。

如果只需对为数不多的几个分类设置单独的 CSS 的话,程序判断上可以简略些,代码示例如下:

<link rel="stylesheet" type="text/css" href=" <?php $categories = get_the_category($post->ID);
if(is_category('1')) echo "style1.css";
elseif(is_category('2')) echo "style2.css";
elseif(is_category('3')) echo "style3.css";
else echo "style.css";
?>" />

以上代码未经芒果测试,但从方法上已经比较清楚。芒果之前也已经提到过类似的方法,详细参考:为 WordPress 添加分类图标

/* 336x280*/
版权所有,转载请注明出处。
转载自 <a href="http://www.mangguo.org/load-different-css-according-to-different-page/" title="根据不同页面分别加载不同 CSS" rel="bookmark">根据不同页面分别加载不同 CSS | 芒果小站</a>

已经有 10 条群众意见

  1. sleepy /2009-10-12 08:57

    简单实用,很好。 回应

    #1
  2. Hobo /2009-10-12 11:04

    暂时还是在老老实实的用人家的模板。 回应

    #2
  3. 万戈 /2009-10-12 16:22

    我就是这么做的,不过现在要修改 CSS 好麻烦的说,沾边的样式表都要修改过。。。 回应

    #3
  4. niuhuifei /2009-10-12 21:22

    深入细致的简单学习一下。 回应

    #4
  5. 洞可 /2009-10-16 23:34

    这方法很好啊 ,实现风格化的页面不错。 回应

    #5
  6. bolo /2009-10-17 23:14

    利用这个方法能是自己的网站更加个性,顺便说说,我换域名了,http://imbolo.com 回应

    #6
  7. 菲萨塔 /2009-10-22 15:08

    太棒了今天又学了一样新东西,以前只是了解,现在是深入的了解!!!! 回应

    #7
  8. hiro /2009-10-24 22:29

    用判断函数就可以非常简单地实现了! 回应

    #8
  9. hiro /2009-10-24 22:30

    不仅仅可以用来加载不同的 css,用条件判断函数也可以加载任何不同的内容,所以我的博客的主要代码都集合在 index.php 文件中。。。。 回应

    #9
  10. 百奥博 /2010-09-03 16:43

    不同页面如何加载不同 js? 回应

    #10

我简单说几句

随机推荐

最新评论