wordpress利用is_category()实现不同分类显示不同样式

通过is_category()进行判断来修改样式

 代码如下 复制代码

<?php
if (is_category('category1')) {
    echo 'class="category1-red"';
}
if (is_category('ccategory2'))
{
    echo 'class = "category2-green"';
}
?>

这种方法简单明了,以twentyten主题为例,在不更改主循环的情况下,还可以通过上述方法为主div添加样式,例如

 代码如下 复制代码

<?php if(is_category('test')){ ?>
        <div id="container" class="test">
<?php } else {?>
         <div id="container">
<?php } ?>

通过名为test的class,可以在样式表中重写默认的样式。

下面是补充方法

IF IN_CATEGORY 条件标签

首先,复制两个single.php文件分别取名为“single1.php” 和“single2.php”。然后,把原先的single.php文件里面的内容全部删除,并用下面的代码进行替换:

 代码如下 复制代码
<?php
$post = $wp_query->post;
if ( in_category(’9′) ) {
include(TEMPLATEPATH . ‘/single2.php’);
} else {
include(TEMPLATEPATH . ‘/single1.php’);
}
?>

意思是:检查日志,如果日志属于分类ID9,则显示single2.php,如果不是,则显示single1.php。

还可以使用更多的条件语句来为不同的类别指定不同的样式和内容,例如:

 代码如下 复制代码
<?php
$post = $wp_query->post;
if ( in_category(’9′) ) {
include(TEMPLATEPATH . ‘/single9.php’);
elseif ( in_category(’12′) ) {
include(TEMPLATEPATH . ‘/single12.php’);
elseif ( in_category(’42′) {
include(TEMPLATEPATH . ‘/single42.php’);
} else {
include(TEMPLATEPATH . ‘/single1.php’);
} }
?>

因为并不想都改变这两个single模板文件, 而仅仅是添加额外的样式表到第二个也就是single2.php文件, 于是再创建两个header模板文件,就像复制single.php一样。然后在第二个header文件的顶部添加上外部样式表的链接:

 代码如下 复制代码

<style type=“text/css” media=“screen”>
@import URL(‘/wp-content/themes/mytheme/style.css’);
@import URL(‘/wp-content/themes/mytheme/cssstyles.css’);
</style >

接着,就是要在第二个single2.php里面调用header2.php:

 代码如下 复制代码

<?php
/* Don’t remove this line. */
require(‘./wp-blog-header.php’);
include(get_template_directory() . ‘/header2.php’
?>

不管是使用in_category还是is_category都是根据当前页面过来的分类id来判断了,这个我只是在程序中判断了,如果要加在后台让那些不懂程序的人设置我们可能不要设置一下数据库了。

时间: 2024-10-26 04:21:13

wordpress利用is_category()实现不同分类显示不同样式的相关文章

wordpress主题不同分类显示不同样式模板

下面就是具体实现代码有需要的童鞋就拿走吧.代码本人已亲测可放心使用,哈...  代码如下 复制代码 <?php if ( in_category('post') ) { include(TEMPLATEPATH . '/single-post.php'); } // elseif 在一次判断 想在加判断复制代码 elseif ( in_category('plugin') ) { // pro 为category的别名 include(TEMPLATEPATH . '/single-plugin

前端-急问:如何使用ajax动态获取后台数据后将数据利用chart.js画图工具显示曲线?

问题描述 急问:如何使用ajax动态获取后台数据后将数据利用chart.js画图工具显示曲线? 20C 刚刚学习ajax,不是很了解.假如后台数据已经以json类型存在,在前端如何使用ajax获取后台的json数据?求给出具体些的完整代码供参考...还有请问如果数据是一系列二位数组(如[a1b1][a2b2]......)那么如何使用chart.js 将其显示出来?还请各位大神指教! 解决方案 ThinkPHP定时ajax获取后台数据,使用javascript动态修改前端页面的表格来显示数据 解

jquery控制两个div中二级分类显示

问题描述 jquery控制两个div中二级分类显示 <div class="n_nav clearfix">这个里面是一级分类 <p class="navigation_column">型号</p><ul class="ul2">这个里面放的是二级的分类 想问的就是如何能够控制二级分类的显示问题, 解决方案 不知是不是你想要的,可以粘过去试试 <%@ page language="j

求助: 怎么分类显示菜品?

问题描述 用户上传种类和菜品,能在一个jsp按种类全部显示出来,不需要下拉菜单之类的东西. 解决方案 解决方案二:那就一个table不就可以了.一个for循环循环所有的行.或者直接用一些框架标签,几行代码就搞定了.解决方案三:至少要两个表吧,毕竟在上传时要先添加菜品种类解决方案四:不知道楼主怎么个分类显示你要是想全部显示,就按1#的,按种类全部扫一遍,放在table中要是想筛选,按自己选择的种类显示对应菜品,不需要下拉菜单之类的东西(不知道这里之类的东西多广)你想要分类显示,起码得有个分类条件(

想利用FormattedText类实现文本显示,并且利用wpf动画实现文字滚动

问题描述 想利用FormattedText类实现文本显示,并且利用wpf动画实现文字滚动,求怎样在WPF里写控件

CSS3实战开发: 纯CSS实现图片过滤分类显示特效

原文:CSS3实战开发: 纯CSS实现图片过滤分类显示特效 各位网友大家好,今天我要带领大家开发一个纯CSS的图片分类显示的网址导航,单纯看标题大家可能有些困惑,依照以往惯例,我先给大家演示一下实际运行效果: 从上面的运行效果,大家不难发现,当我点击某一菜单时,导航区域会相应高亮显示此分类的图标,而其他图标则会变暗. 很多人可能会说,这个这么简单,直接使用javascript或jQuery等前端框架,再配合一些CSS,就可以很快实现同样的效果了.如果你是这一部分人,我也希望你停下脚步,看看这篇教

基于MVC4+EasyUI的Web开发框架经验总结(1)-利用jQuery Tags Input 插件显示选择记录

最近花了不少时间在重构和进一步提炼我的Web开发框架上,力求在用户体验和界面设计方面,和Winform开发框架保持一致,而在Web上,我主要采用EasyUI的前端界面处理技术,走MVC的技术路线,在重构完善过程中,很多细节花费不少时间进行研究和提炼,一步步走过来,也积累了不少经验,本系列将主要介绍我在进一步完善我的Web框架基础上积累的经验进行分享,本随笔主要介绍利用jQuery Tags Input 插件显示选择记录. 我在利用jQuery Tags Input 插件之前,一直想找一个合适的J

ajax asp net-ajax AccordionPane后台添加后为什么客户端显示的样式是隐藏的

问题描述 ajax AccordionPane后台添加后为什么客户端显示的样式是隐藏的 代码如下: aspx页面: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="test.aspx.cs" Inherits="test" %> <%@ Register Assembly="AjaxControlToolkit" Namesp

利用css修改复选框的样式做出如下的样式

问题描述 利用css修改复选框的样式做出如下的样式 解决方案 你这个单css搞不了,要结合js <!doctype html> <script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.1.min.js"></script> <style> ul,li{list-style:none;padding:0px;