web-dev-qa-db-ja.com

インラインCSSをテーマに追加

Wordpressのテーマがあり、カスタムCSSを追加したい

だから私はヘッダに追加しようとする

<style>
<?php if (!empty($btn_color)){  ?> 
.btn-default{ background-color:<?php echo esc_attr($btn_color);?>; } <?php } ?>
</style>

しかし、それは良い方法ではないようで、私は使う必要があります

wp_add_inline_style() 

それでは、この関数の使い方は?

1
name name2

Codex に従って、この関数は2つの引数を受け取ります。

<?php wp_add_inline_style( $handle, $data ); ?>

この例を見てください。

function my_inline_css() {
    wp_enqueue_style(
        'custom-style',
        get_template_directory_uri() . '/css/custom_script.css'
    );
        $btn_color = esc_attr( get_theme_mod( 'my-custom-color' ) ); 
        $custom_css = "
                .btn-default{
                        background-color: {$btn_color};
                }";
        wp_add_inline_style( 'custom-style', $my_custom_css );
}
add_action( 'wp_enqueue_scripts', 'my_inline_css' );

テーマにはbackground-colorを指定してwp_add_inline_style()を使って出力するオプションがあるはずです。

wp_head()にフックするなど、他のオプションもあります。

function my_inline_css($btn_color) { 
    if ( !empty($btn_color) ) {  ?> 
        .btn-default { background-color:<?php echo esc_attr($btn_color);?>; } <?php
    }
}
add_action('wp_head','my_inline_css');

しかし、その$btn_color値がどこに設定されているのか私にはわかりません。あなたは正確な答えを得ることができるようにあなたの質問にこの情報を追加したいかもしれません。

1
Jack Johansson