将WordPress Customizer CSS连接到style.css

时间:2017-11-03 15:15:16

标签: css wordpress

自定义程序生成的任何CSS都将直接写入head部分。 自定义程序API使用wp_head钩子。

我想以某种方式抓住这个CSS并将其连接到style.css。

我想做的是以下内容:

  1. Customizer吐出一个类.red {color:red;}

  2. 我想抓住这些信息并以某种方式将其传输到我的style.css中。

  3. 理想情况下,Customizer CSS将插入到style.css的开头

    编辑只是为了澄清:“定制器CSS”我指的是颜色选择器控件生成的CSS信息。不是来自“自定义CSS”输入字段的CSS - 这个我可以复制并粘贴到我的style.css

    一个想法是将定制器CSS输出不是通过wp_head保存在head部分中,而是保存在其他地方,例如。

    我该怎么做? 是否有一个钩子,它是否可能,它是否有意义?

    这只是我的一个想法 - 我也对完全不同的方法持开放态度。

1 个答案:

答案 0 :(得分:1)

我认为直接写入文件根本不是一个好主意。因为下次更改值时,不需要先前编写的CSS。动态值应该是可变的。当您按照建议将输出值写入文件时,先前生成的值将始终存在,这是多余的。

最好的方法是使用wp_add_inline_style参考here

使用以下方法将CSS添加到refereed文件:

function my_styles_method() {
  $color = get_theme_mod( 'color-picker-control' ); //E.g. #FF0000
  $custom_css = "
        .mycolor{
            background: sachet;
        }";
  wp_add_inline_style( 'main-style', $custom_css ); 
}
add_action( 'wp_enqueue_scripts', 'my_styles_method' );