首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将不同的样式表分配给不同的页面?

问如何将不同的样式表分配给不同的页面?
EN

Stack Overflow用户
提问于 2013-11-24 07:15:42
回答 2查看 1.4K关注 0票数 0

我正在尝试弄清楚如何为不同的页面分配一个独立的样式表?我不想对我的首页使用相同的样式表,对我的博客和相关页面使用不同的样式表和页面模板。

我的主题只包括一个首页,一个页面模板和一个博客。因此,我需要弄清楚如何与实际页面区分开来。它需要应用于所有的博客页面。

所以我想知道我是否可以这样做(添加到标题中):

代码语言:javascript
复制
<?php if ( 'front-page.php' ) { ?>
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); type="text/css" media="screen" />
<?php } elseif ( 'page.php' ) { ?>
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>"  type="text/css" media="screen" />
<?php } else { ?>
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>"  type="text/css" media="screen" />
 <?php } ?>

如果是首页或页面模板,则使用普通样式表。如果是其他内容,则使用博客样式表。如果可以这样做,有没有人能帮我解决语法问题呢?

EN

回答 2

Stack Overflow用户

发布于 2013-11-24 09:11:41

根据您的情况,通常最好的方法是在一个CSS样式表中完成所有这些工作。

您可以通过使用page-id选择器来定位CSS文档中的特定WordPress页面,如下所示:

代码语言:javascript
复制
.page-id-156 h1 { color: red; }

或者,您可以通过页面模板来确定目标

代码语言:javascript
复制
.page-template-blog div { border: 1px solid black; }

在header.php中使用body_class()函数时,这些类会自动附加到body元素,如下所示

代码语言:javascript
复制
<body <?php body_class(); ?>

这里有关于该函数的更多信息,http://codex.wordpress.org/Function_Reference/body_class

票数 4
EN

Stack Overflow用户

发布于 2013-11-24 11:04:04

jsrgnt answer在很大程度上说对了。但如果您需要使用不同的样式表,请在functions.php上使用wp_enqueue_scripts:

代码语言:javascript
复制
add_action( 'wp_enqueue_scripts', 'enqueue_so_20169099' );

function enqueue_so_20169099()
{
    # http://codex.wordpress.org/Conditional_Tags
    if( is_something() )
    {
        wp_enqueue_script( /* etc */ );
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20169099

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档