WordPressでは、すぐに使用できるデフォルトのテーマが付属しています。また、インターネット上でも、無料ライセンス、有料ライセンスのテーマも数多く配布されています。
これら既存のテーマを使用し、管理画面での設定やプラグインの追加で、サイトをカスタマイズする事も可能です。しかし、それではカスタマイズできる範囲が限られます。

より細かいカスタマイズをする方法、それはテーマを自作する事です。

WordPressの3つのカスタマイズ方法「テーマ」「プラグイン」「管理画面」

WordPressサイトをカスタマイズする方法は、3種類に分類する事ができます。
それは、テーマプラグイン管理画面です。

customize

テーマは、サイト全体の構造から、各ページの構成・デザイン、拡張機能の設定まで、全てを請け負う部分です。WordPressサイトでは、必ずいずれかのテーマを使用します。インストールしたばかりのWordPressでは、デフォルトで付属するテーマが使用される設定になっています。

プラグインは、テーマによって構築されたサイトに、更なる機能を追加するものです。SEO対策やサイト高速化などサイトを強化するプラグインから、メールフォームや関連記事などサイトの表示に関するプラグイン、管理画面をより使いやすくするプラグインなど、様々な物を複数組み合わせて使う事ができます。

管理画面では、テーマ変更可能な部分をカスタマイズできます。変更可能な部分は、ヘッダー画像メニュー項目などが一般的ですが、使用するテーマによって異なります。テーマによって、全くカスタマイズができない物から、細かいカスタマイズができる物まで様々です。
また、管理画面では、フロントページやパーマリンクなどの、サイトのリンク構造に関わる部分も設定できます。

プラグインを使うメリット・デメリット

プラグインは、自分の好きな機能だけを手軽に追加・解除を行えるので便利ですが、デメリットもあるので注意しなければなりません。プラグインで実装できる機能は、基本的にテーマで実装する事も可能なので(その難易度を度外視すればですが)、プラグインを導入する前に、メリットとデメリットを踏まえながら検討しましょう。

plugin

プラグインのメリット

・高度な機能を簡単に追加できる
「プラグイン」は、自作の「テーマ」で難しいコードを書かなくても、手軽に高度な機能を実装できます。
例えば、サイト高速化のシステムや、カスタムフィールドのフロントエンドなどは、理論的にはテーマでも実装可能とは言っても、実際には複雑なプログラムを大量に書く必要があり、一からの開発は困難です。
そのような機能が必要な場合、「プラグイン」での実装が現実的です。

・実績のあるプラグインは安全性も期待できる
自作の「テーマ」で機能実装をした場合、知識不足や不注意によるミスから、セキュリティ上の欠陥を招いてしまうおそれがあります。
不完全なプログラムでトラブルを起こしてしまうよりは、多くのユーザが利用しているプラグインに頼ったほうが安全と考える事もできます。
ただし、どのようなプラグインでも、絶対的な安全が保証されているわけではありません。プラグインサイトの評価などをよく参考にしましょう。

プラグインのデメリット

・WordPressのアップデート時の互換性
WordPressは頻繁にアップデートがあり、バグ修正などが行われています。WordPressのバージョンは、できるだけ最新のものを使用するのが望ましいので、プラグインも最新のWordPressに対応している必要があります。
もし、プラグインが最新のWordPressに対応していないと、エラーメッセージを出したり、正常に動作しなくなってしまう事もあります。
サイトを公開し続ける期間は長期になるかもしれません。その間、WordPressを常に最新のバージョンで保ち続けるためには、プラグイン選びの際に、頻繁にアップデートが行われている物や、最終アップデートが新しい物を選ぶようにしましょう。
また、どんなプラグインでも、開発が滞ったり、終了してしまう可能性があります。そのようなリスクを考慮して、実装の難しくない機能についてはテーマのほうで実装するほうが安全です。

・細かいカスタマイズは不可能
プラグインによるカスタマイズは、そのプラグインの機能内で制限されています。どうしても、細かいカスタマイズを行いたい場合は、プラグインを部分的に改変するという力技もありますが、あまりお薦めできません。
たとえば、プラグインのアップデートを行うと、自分で改変した部分は元通りになってしまいます。そのため、プラグインのアップデートの度に、該当箇所を探して改変する作業を行う事になりますが、アップデートが度重なるとかなりの労力になります。
プラグインは気軽に改変したりせず、他のプラグインや、テーマレベルでの実装など、代替案を検討しましょう。

プラグインの使いどころ

将来のサポートの事を考えると、プラグインは宛てにならないので、テーマで機能を実装したほうが良い、と言っても、実際には効率が悪すぎます。

プラグインの導入の指針として、シンプルな考え方は、もし、そのプラグインが動かなくなったら困るかどうかという事です。

動かなくなったら困るプラグインは、そのプラグインを停止したら、サイトの公開が続行できなくなるような物です。
例えば、カスタム投稿タイプを設定するプラグインは、もし停止してしまうとサイト構造全体が破綻してしまう可能性があります。他にも、パーマリンク構造を制御するプラグインなども挙げられます。
このようなプラグインは、常に動作している必要がある機能(停止できない機能)に関する物と分類できるできます。
この場合、多少の工数で済むのであれば、できるだけプラグインには頼らずにテーマ側で実装するのが安全です。

動かなくなっても(たいして)困らないプラグインは、多くは補足的な機能(一時停止できる機能)に関するプラグインです。
例えば、サイト高速化のプラグインやSEO対策のプラグインの多くは、停止してもサイトの公開自体には問題が出ないようにできています。
また、人気記事や関連記事を表示するプラグインは、停止してもその一部分が表示できなくなるだけなので(場合によってはテーマ側の修正も必要になりますが)、補足的な物と言えるでしょう。
メールフォームを作成するプラグインは、そのサイトでのメールフォームの扱いにもよりますが、「お問い合わせページ」にメールフォームを設置している程度でしたら補足的な物として扱う事は可能でしょう。また、メールフォームの場合、テーマでの実装には工数の大きさや安全性の問題もありますので、そういった事も踏まえて検討する事になります。

zuhyo4

サイト作成・カスタマイズの指針

サイト作成・カスタマイズの際に、どのような方法で対応するかの指針の例をまとめました。

既存のテーマ+管理画面でのカスタマイズで対応できる場合
▶ WordPressがアップデートした時の互換性を考慮。作成や更新が古いテーマは使用しないほうが良い。

自作のテーマ+既存のプラグインで対応する場合
▶ プラグインの互換性を考慮
▶ 常に動作している必要がある機能(停止できない機能)については、できるだけテーマ側で実装する
▶ 補足的な機能(停止できる機能)は、効率を優先してプラグインをうまく利用する
▶ プラグインを選択する際に、プラグインの更新頻度や安全性をよく吟味する

次の章からは、テーマファイル内の仕組みについて、要点をできるだけシンプルに、まとめて行きたいと思います。
次章: テーマ作成の基礎〜その2 テーマを構成するファイル