在页眉中使用各种css表是个好主意吗?

时间:2017-04-30 作者:japanworm

我有一个很大的style.css 文件只有某些页面才需要大量内容。

我想在必要的时候用“如果查询”打电话给他们可能是个好主意。

我才刚开始,但我的header.php 已经感觉臃肿:

<?php
    if (is_page([505,981,928,1035,1036]))
        echo \'<link href="/wp-content/themes/alltuts/start-here.css" rel="stylesheet" type="text/css">\'; ?>

<?php
    if (is_page([37,40]))
        echo \'<link href="/wp-content/themes/alltuts/faq-links.css" rel="stylesheet" type="text/css">\'; ?>
<?php
    if (is_page(\'27\'))
        echo \'<link href="/wp-content/themes/alltuts/contact-form.css" rel="stylesheet" type="text/css">\'; ?>

<?php
    if (is_front_page())
        echo \'<link href="/wp-content/themes/alltuts/slider.css" rel="stylesheet" type="text/css">\'; ?>
现在,在我继续之前,我想知道这是否真的是Wordpress中的正确方法,或者这最终会降低性能吗?如果是这样的话,我是不是应该把一切都放在我的主style.css?

1 个回复
最合适的回答,由SO网友:Johansson 整理而成

您应该使用wp_enqueue_stylesheet. 看看这个例子:

add_action( \'wp_enqueue_scripts\', \'my_scripts\' );
function my_scripts(){
    if (is_page([505,981,928,1035,1036]))
        wp_enqueue_style( \'css1\', get_template_directory_uri().\'/start-here.css\');

    if (is_page([37,40]))
        wp_enqueue_style( \'css2\', get_template_directory_uri().\'/faq-links.css.css\');

    if (is_page(\'27\'))
       wp_enqueue_style( \'css3\', get_template_directory_uri().\'/contact-form.css\');

    if (is_front_page())
       wp_enqueue_style( \'css4\', get_template_directory_uri().\'/slider.css\');
}
这样,你就不必麻烦你的header.php 以任何方式归档,并且您确保您的方法是标准的。

例如,如果您正在开发一个商业主题,大多数市场都不允许您直接将样式表打印到标题中。

进一步阅读WordPress Developers.

相关推荐

Performance on WPMS

我的WPMS站点托管在8核/32mb RAM服务器上,但响应时间非常长。我们有大约1000个博客(单个db上有35000多个表)和70000个页面浏览量。我认为我可以缩短响应时间,将具有更多页面浏览量的博客移动到单独的DB中,并使用hyper DB插件将所有博客拆分为每个DB 100个博客。你觉得怎么样?