WordPress で wp_head() を使ってページ毎にスタイルシートを変更する

WordPress テンプレートの html ヘッダ内に記述する wp_head() を使いページ・カテゴリ毎に外部スタイルシートを読み込ませる。

テンプレートの <head></head> 内に <?php wp_head(); ?> を記述する。

<head>
...
<?php wp_head(); ?>
...
</head>

テンプレートディレクトリにある functions.php に以下の例のように記述を追加する。

function style_select() {
    $template_dir = get_template_directory_uri();
    $tag_str = '<link rel="stylesheet" href="' . $template_dir . '/';

    if (is_page('about')) {
        $tag_str .= 'about.css" type="text/css" media="screen" />';
    } elseif (is_page('links')) {
        $tag_str .= 'links.css" type="text/css" media="screen" />';
    } else {
        $tag_str = '';
    }

    echo $tag_str;
}

add_action('wp_head', 'style_select');
«
»