WordPressで何かの機能を追加しようと考えた場合、テーマへファイルを追加してfunctions.phpから実行させたり、直接テーマのfunctions.phpへプログラムを追加したりするケースが多くあると思います。
同時に独自のプラグインを作成してインストールと有効化を行い、そこへプログラムを追加して機能させるという方法もあります。
使用する関数やプログラムコードの書き方や動作順などに若干の違いはあるものの、どちらの場合も同じ動作をさせることができます。
同じならどちらでも..と言いたいところですが、本ページではプラグインを作成した場合のメリットについていくつか紹介しておきたいと思います。
不具合発生時の対応がしやすい
WordPressでは、テーマに何かの不具合があって一旦そのテーマをバックアップして削除したりすると、そのWordPressバージョンのデフォルトテーマ(例えばWordPress6.8.xであれば「Twenty Twenty-Five」というテーマ=これをデフォルトテーマと言います)がとりあえず有効になり、サイトの動作を続けられるようになっていますが、デフォルトテーマが存在しない場合にはサイトが動作しなくなってしまいます。
一方、プラグインの場合は、プログラムの不良などで動作が停止した場合、同様にバックアップを取って一旦プラグインのフォルダを削除するか、フォルダ名をリネームすることで強制的に停止することができ、そのプラグインの機能のみが止まるだけであとは正常にサイトが稼働するようになるため、テーマの場合と比べて復旧が楽というほかに、デフォルトテーマで稼働してしまって全く違ったデザインのサイトが公開状態となってしまうのを避けることもできます。
いずれの場合も復旧に慣れていれば問題はないですが、経験上ではプラグイン停止の方が圧倒的に対処が楽だと感じます。
テーマを変更した時の作業が減る
テーマを変更したい場合、テーマへプログラムを追加している場合は、変更後に旧テーマに書いたプログラムを移植する作業が必要になりますが、プラグインの場合にはその作業を行う必要がありません。
プログラムのチェック機能が使える
プラグインでは、WordPress公式配布候補として作成した時にプログラムの最低要件を満たしているかどうかをチェックする「Plugin Check (PCP)」というプラグインが用意されています。
これは本来、前述したように、WordPress公式サイトで広く配布することを目的としたプラグインを作った際に、人の目でプログラムチェックを行う前に確認する目的で用意されているものですが、特にデータの保存を安全に行うサニタイズ処理、データを出力(表示)させる際に安全性を保つエスケープ処理などがきちんとされているかをチェックしてくれるので、どこかで見つけたコードをコピペした場合にチェックすることでより安全にコードを使用することができますし、何かの入力をする際にその場所から入力されていることを確認するNonce検証がきちんとされているかなどをチェックすることもできます。
一方テーマにはこうしたチェックを行う機構やプラグインがないため、知らない間に危険性のあるコードを追加してしまい、思わぬトラブルや被害に遭遇する可能性があります(よほど自身のプログラムやコピーしたプログラムのチェックに自信があれば話は別ですが...)。
以上がプログラムをプラグインから実行するメリットです。個人的にはコードチェックが使えるところが大きいと思いますがいかがでしょうか?
そんなこと言ってもプラグインなんて作れないし..と思った方、以下のページを参考にすれば簡単にできますので、ぜひチャレンジしてみてください。












コメントを残す