WordPressのCSSでbackground-imageを設定する方法

タナビーの高梨です。

WordPressのテーマを自作していて、CSSでbackground-imageを設定しようとして、ふと手が止まってしまいました。

テンプレートフォルダのパスを取得するのはget_template_directory_uriだよなぁ、でもCSSにphpって書けないよなぁ??

さて、どうする??

結果、極めてシンプルな結論となったので備忘に書きとめておきます。

背景画像を設定するプラグインを提供開始しました

この度、すべてのブロックに対して簡単に背景画像を設定できるプラグインを開発し提供開始しました。

詳細はこちらからご確認ください。

CSSにphpを書こうという発想が間違い!

なまじget_template_directory_uri()などを知っているため、どうやってこの情報をCSSに取り込むのか?という発想の始点があって無駄な時間を過ごしてしまいました。

最初は自然な発想で、

background-image: <php? get_template_directory_uri(); ?>

などとしていましたが、当然出力されるCSSはそのまんまが出力されます!

たどり着いた結論がこちら

background-image: "images/xxxx.png"

とか

background-image: "../../uploads/xxxx/xxx.png

とか。

CSSファイルからの相対パスを書けば良いだけでした。

メディアライブラリにアップロードした画像の場合は後者ですね。

フォルダ構成とファイルの配置はテーマや各自の環境によって異なると思います。

サーバのファイルマネージャなどから自身の環境を確認してください。

ただ、後者の場合は相対パスではなく直接画像のURLを指定して、background-image: url(http://~~)などとした方が分かりやすいかもしれません。

画像ファイルのURL確認方法はこちらの記事にまとめています。

まとめ

というわけで、極めてシンプルな結論でした。

高梨@タナビースタジオラボでは、ご自身での設定が難しいような場合のご相談を承っています。

お問合せページからお気軽にお問合せください!