サポート » テーマ » style.cssはテーマディレクトリ直下でないと読み込まれないか?

  • 初めまして。テーマ作成において疑問な点があり、質問をさせていtだきました。

    wp-content/themes/テーマディレクトリ/style.css

    といった通常の階層の場合、もちろんstyle.cssを読み込んでくれますが、

    wp-content/themes/テーマディレクトリ/css/style.css

    のようにディレクトリ内にstyle.cssファイルを格納すると
    エラー: スタイルシートが見つかりません。
    と、ファイルを見つけてくれません。

    なお読み込み方はfunctions.phpに
    wp_enqueue_style( 'style', get_stylesheet_uri());

    試しにパス指定で
    wp_enqueue_style('style', get_template_directory_uri().'/css/style.css');
    とやっても、やはりダメでした。

    WordPressではテーマ直下にstyle.cssを置かないと読み込んでくれないという理解で良いのでしょうか?
    開発上、フォルダを作って入れておいた方が作業しやすいのでできればやりたいところです。

    お分かりになられますかた、ご教授いただけましたら幸いです。

    よろしくお願いいたします。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • こんにちは

    テーマにはテーマのルートディレクトリに style.css (メインのスタイルシート) が必須です。そしてメインのスタイルシートはテーマのヘッダ情報を含まなければなりません。

    参考ページ:
    https://wpdocs.osdn.jp/テーマの作成#.E3.83.86.E3.83.BC.E3.83.9E.E3.83.86.E3.83.B3.E3.83.97.E3.83.AC.E3.83.BC.E3.83.88.E3.83.95.E3.82.A1.E3.82.A4.E3.83.AB
    https://stackoverflow.com/questions/10160532/style-css-in-css-directory-i-e-not-in-theme-root

    こんにちは

    テーマの style.css については ishitaka さんのおっしゃる通りです。

    でも、単にスタイルシートを読み込む、という話なら、
    wp_enqueue_style('style', get_template_directory_uri().'/css/style.css');
    で読み込まれるはずです。
    第一引数の'style'というハンドル名が重複していなければ。

    子テーマをお使いなら、
    wp_enqueue_style('style', get_stylesheet_directory_uri().'/css/style.css');
    と思います。

    補足です。

    メインのスタイルシート(style.css)は必須ですが、エンキュー(組み込む)する必要はありません。
    メインのスタイルシートにはテーマのヘッダ情報のみを記述して、スタイルは別ファイルにするのもいいかもしれません。

    @ishitaka さま、@munyagu さま、
    ありがとうございます!

    貼っていただいたスタックオーバーフローのページは、まさに同様のケースですよね。

    >メインのスタイルシート(style.css)は必須ですが、エンキュー(組み込む)する必要はありません。
    知りませんでした。こちらが知れて良かったです。
    ヘッダ情報用のstyle.cssとスタイル用のhoge.css、2ファイル読み込めば良いんだろうけど、それも何だかなあ。と思ってましたので。
    であれば、おっしゃる通りスタイル用のcssファイルを別に作れば、全く問題なさそうですね。

    後ほど実際に組んでみようと思いますが、私の理解に誤りがなければ、以上のお二方のご回答で解決できると思います!

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • このトピックに返信するにはログインが必要です。