1年前に投稿

WordPress のテーマについて勉強してみた

DISCLAIMER: This article is more than a year old and may not be current.

この記事は約 4 分で読めます。

4

先日、
Luxeritas のサイトマップで特定の記事を除外したい
と言う記事をご紹介しました。

親テーマのファイルを
子テーマにコピーして
編集すると言う内容なのですが、
ある疑問を感じました。

コピーされた
親テーマのファイルは
どうなるのだろうか?

お恥ずかしいのですが、
WordPressのテーマに関して、
ほとんど勉強していなかったのです。

なので、今日は
WordPressのテーマについて
勉強してみたいと思います。

アイキャッチ画像は、
WordPress 5.3に搭載される
新しいデフォルトテーマ
Twenty Twenty
ブログ投稿ページを掲載しています。

テーマとは何か

簡単に言えば、WordPressのテーマシステムとはブログの「着せ替え」をするということです。ですが、ただの「着せ替え」以上のものを持っています。着せ替えというと、ただデザインが変わるというだけになってしまいます。WordPressのテーマは見た目の調整だけでなく、表示する内容も操ることが出来るのです。

テーマの使い方

WordPress テーマは、
WordPress サイトの外観と機能性を作り上げるためのファイルのセットです。

なぜ子テーマを使うのか?

子テーマは、親テーマと呼ばれる別のテーマの機能とスタイルを継承したテーマです。
既存のテーマを変更する方法として、子テーマが推奨されています。

子テーマ

テーマを直接変更した場合、
そのテーマがアップデートされると変更が失われるかもしれません。
子テーマを使用すればテーマの変更は確実に保持されます。

子テーマを理解する

WordPressがテーマファイルを参照する際「もしも、子テーマディレクトリに親テーマディレクトリに存在するファイルと同名のファイルがあれば、そちらを優先する」という処理を行っているためです。
つまり、親テーマをベースにカスタマイズしたい部分(ファイル)を、子テーマに複製し修正すれば、そちらが参照されるようになるということです。

アップデートしても大丈夫!WordPressの子テーマでデザインのカスタマイズをする方法

上記のまさに、

親テーマをベースにカスタマイズしたい部分(ファイル)を、
子テーマに複製し修正すれば、
そちらが参照されるようになるということです。

これが
先日ご紹介した
サイトマップのカスタマイズの
方法そのものと言う事になります。

style.cssとfunctions.php

style.cssとfunctions.phpは例外で、
親テーマと子テーマのファイルを
両方読み込むようになっている

と言う事なのですが、
style.cssに関してはイマイチ
引っかかる部分があります

style.cssと異なり、子テーマの functions.php は、親テーマの機能を上書きしません。
代わりに 親の functions.php に追加して読み込まれます
(正確には、親テーマのファイルの 直前 に読み込まれます。)

functions.phpの使用

上記の
style.cssと異なりという部分が
イマイチわからない・・・、
子テーマのstyle.cssは元々親テーマの
style.cssを上書きするが、
親テーマのstyle.cssを子テーマの
style.cssより先に読み込む処理を
行っていると言う解釈でよいのでしょうか?

依存関係に 'parent-style’ を設定すると
子テーマのスタイルシートは親テーマのあとで読み込まれます。

結果、
style.cssとfunctions.phpは
上書きではない
と言う事に
落ち着くという事なのかな?

最終的にどういうことか

functions.phpと
style.cssは上書きではなく、
子テーマのfunctions.phpと
style.cssに追加していく容。

親テーマのfunctions.phpと
style.css 以外のファイル
子テーマに置くと
子テーマに置いたファイルが
優先され

親テーマの同ファイルは
完全に無効化される。

つまりは、
親テーマのファイルをコピーして
子テーマ上でカスタマイズしていけば、
親テーマは何も編集せずとも
カスタマイズが出来て、

子テーマの内容が反映されるので、
親テーマにアップデートがあっても
カスタマイズに影響を受けない

ただし、
カスタマイズしたファイルに
親テーマ側のバージョンアップ等で
新機能が追加されたときは、
その恩恵は受けられませんよ

・・・と、
こんな感じでしょうか?

Thinking Cat
Thinking Cat
親テーマが
バージョンアップしたら
(カスタマイズしたファイルは)
どうするのかって?
単純にやり直すんじゃない?
上記を踏まえて、
親テーマのファイルをコピーして
子テーマ上でカスタマイズする際は
くれぐれも慎重に、後を考えて
行う事が重要という事ですね。
貴重なお時間を割き、
最後まで
ご高覧いただきまして
有難うございました
WordPress のテーマについて勉強してみた