WordPressでCSSを読み込む正しい方法|linkタグとwp_enqueue_styleの違いとは?


WordPressでテーマを作成していると、「CSSファイルってどうやって読み込ませるのが正解?」という疑問にぶつかる方は多いでしょう。実は、CSSを読み込むには主に2つの方法があります。

  1. <link>タグを直接書く方法
  2. functions.phpwp_enqueue_style()を記述する方法

この記事では、それぞれの特徴と、なぜWordPressでは wp_enqueue_style() の使用が推奨されているのか、さらに is_admin() を使って管理画面との分離方法についても解説します。


✅ 方法①:linkタグで直接CSSを読み込む

HTMLでおなじみの方法で、テーマのheader.phpなどに以下のように記述します。

<link rel="stylesheet" href="<?php echo get_template_directory_uri(); ?>/style.css">

この方法のメリット:

  • 手軽で初心者にとって分かりやすい
  • テストや一時的な読み込みには便利

ただし…

WordPressのテーマ構造やプラグインと連携する際には不向きです。複数のCSSファイルを読み込む際や、条件分岐が必要な場面では柔軟性がなく、トラブルの原因になることもあります。


✅ 方法②:wp_enqueue_style()を使ってCSSを読み込む(推奨)

WordPressが公式に推奨している方法が wp_enqueue_style() 関数を使う方法です。

functions.php に以下のように記述します。

function my_theme_enqueue_styles() {
  // 管理画面では読み込まないようにする
  if ( !is_admin() ) {
    wp_enqueue_style(
      'main-style',
      get_template_directory_uri() . '/style.css',
      array(),
      '1.0.0',
      'all'
    );
  }
}
add_action('wp_enqueue_scripts', 'my_theme_enqueue_styles');

この方法のメリット:

  • WordPressの仕様に沿っており、安全・安定
  • 読み込む順番や条件分岐(例:特定のページだけ読み込む)が可能
  • プラグインや他テーマと干渉しにくい
  • ブラウザキャッシュ対策がしやすい

🔍 is_admin() とは?

is_admin() は「現在の画面が WordPress の管理画面かどうか」を判定する関数です。

  • true:管理画面(ダッシュボードなど)である
  • false:フロント(ユーザーが見るページ)である

この条件を使うことで、管理画面には不要なCSSやJSの読み込みを避けることができ、パフォーマンス向上や誤作動防止につながります。


is_admin() を使う理由

理由内容
管理画面を汚さないフロント向けのCSSが管理画面に影響するのを防ぐ
軽量化管理画面の無駄な読み込みを防止
不具合回避JSやCSSが管理画面と競合することを避けられる

🔁 実際の比較

項目linkタグwp_enqueue_style
推奨度❌ 非推奨✅ 推奨
柔軟性低い高い(条件分岐・依存関係対応)
管理画面対応不可is_admin()で対応可能
プラグイン干渉対策弱い強い

🎯 まとめ

WordPressテーマ開発では「条件に応じて適切に読み込む」ことが重要!

開発初期は<link>でも可能だが、本番では wp_enqueue_style() を使うのがベスト

is_admin() を使えば、管理画面とフロント画面の処理をしっかり分けられる



✅ 今すぐ使える実装コード

function my_theme_enqueue_assets() {
  // 管理画面では読み込まない
  if ( !is_admin() ) {

    // CSSの読み込み
    wp_enqueue_style(
      'main-style',
      get_template_directory_uri() . '/style.css',
      array(),
      '1.0.0',
      'all'
    );

    // JavaScriptの読み込み
    wp_enqueue_script(
      'main-script',
      get_template_directory_uri() . '/js/script.js',
      array('jquery'), 
      '1.0.0',
      true // trueでフッターに読み込み
    );
  }
}
add_action('wp_enqueue_scripts', 'my_theme_enqueue_assets');

✪ 画像素材がないものはランダムで表示されるようになっています。フリー素材などでご用意ください。

おすすめChromeプラグイン一覧

プラグイン名特徴
GoFullPageウェブページ全体のスクリーンショットを簡単に取得できるブラウザ拡張機能です。
ColorZilla色を抽出するための拡張機能です。
WhatFontウェブページ上のフォントの情報を簡単に確認できるブラウザ拡張機能です。
PerfectPixelデザイナーが作成したデザインと実際にコーディングされたウェブページがどの程度一致しているかを確認・調整するためのブラウザ拡張機能です。

模写の手順

ステップ内容
ステップ 1構図を手書きか全画面スクショ(Go full page等)した後、ペイントツールで四角で囲い、大まかなclass,命名規則をあらかじめ決める。
ステップ 2HTMLの基本構造を作成する
ステップ 3CSSでレイアウトを模写する
ステップ 4 中級〜JavaScriptを追加して動きを再現する
ステップ 5最終調整を行い、検証ツールやPerfectPixel(chromeプラグイン)などで完成を確認する。