You are here

请教:如何让不同的页面有不同body id和class呢?

yoyoyo 的头像
Submitted by yoyoyo on 星期一, 2008-12-29 09:36

如题.比如:product栏目的term页面 是<body id="product" class="term">product栏目的node页面 是<body id="product" class="node">
假设网站有栏目:关于我们 新闻中心 产品中心 联系方式其中【关于我们】和【联系方式】共用同一个content type【新闻中心】和【产品中心】各自有自己的content type.
请教下葛仙人,该如何实现...

论坛:

g089h515r806 的头像

这个是在模板中控制的,你可以在页面的模板文件中,进行判断,不同的页面输出不同的id就可以了.page.tpl.php。多写一点if语句。

yoyoyo 的头像


是啊,我看过你之前写的用page-type.tpl.php的方法,
但是看似葛兄的方法只是对node页面有效,而在term页面就对page-type.tpl.php无动于衷了。。。
因为$node->type,这个东东 只会在node页面里面有效,而在term页面是不管用的

yoyoyo 的头像

其实“类似原理”才怪, 因为在term里面没有node页面下类似的$node变量,
所以要判断都没有参照的东西。
---------------------------
没办法,最后使用这个不是很科学的办法,
人工判断页面的title之后再来给body id,(也写出来,给大家参照下)
<body
switch (trim(strtolower($title))) {
case "about us":
    echo 'id="aboutus"';
    break;
case "contact us":
    echo 'id="contactus"';
    break;
case "store list":
    echo 'id="storelist"';
    break;
case "data and other policies":
    echo 'id="dop"';
    break;
case "welcome":
    echo 'id="welcome"';
    break;
}
?>>

一个叫JAM的同学写的