WordPressに関する記事をいろいろサーフィン(古い・・・)してるとよく出てくるのが「プラグインを使わずに・・・」というフレーズ。
このサイトでは実に40個近いプラグインを使っているのですが、それって駄目なの??素朴な疑問が湧きました。
で、プラグインを使わない主義?の方の記事を見ていると、何となく根拠がない気がして仕方ありません。そう思うのは私だけ?だって便利じゃないですか、プラグイン。そしてそれがブログと違ってWordPressでのサイト作りを楽しくする動機でもあるわけですから・・。
さすがに40個は多いかなぁなんて思ってますけど実際に必要な機能を実装するためだから仕方ない!と思ってます。確かに同じ環境でまっさらのサイトを作ると異様に表示が速い・・とは感じますが、まあ記事も少ないし、データベースにゴミもたまってないというのも大いに影響しているわけですから、一概にプラグインのせいでもないかもしれない。
ということで、このサイトでもたくさんのプラグインを紹介させていただいていることからそれなりの経験もありますので、私なりにWordPressのプラグインに関するいろいろな疑問について調べてみました。といってもデータなどに基づかない主観なのであしからず。
最初に断っておきますが、私にはプラグインと同じものを作るだけのコード知識はありません。でも恐らく作れたとしてもやっぱりプラグインを使うかな??そんな感じですので、承知の上で読み進めていただければ幸いです。
プラグインを使わない理由と独自見解
プラグインを使わない理由をいろいろググってみると
- サイトの表示や動作か遅くなる
- 悪意のあるコードなどが仕込まれている可能性がある
- 不具合が発生する場合がある
- 不要な機能が含まれていたり足りなかったりする場合がある
- 更新するとカスタマイズしたものが元に戻ってしまう
というのが多いですね。その他いろいろあるでしょうけどとりあえず1つ1つについて語ってみようと思います。
「サイトの表示や動作か遅くなる」のウソホント
いきなり質問ですけど、このページの表示はどうでしたか?遅かった?速かった?特に気にならない?どれでしょう??遅かったと思った方はこの記事は役に立ちませんのでどうぞ別のサイトへ移動してください(お役に立てず申し訳ありません・・・)。
WordPressがページを表示する際にはいろいろなファイルを読み込みます。もちろん有効になっているプラグインの情報も一通り読み込んでおいて、そのページの表示に必要な場合にはすぐに動作するようになっています。
更にプラグインがヘッダーに何かを挿入するようにしている場合には、ページのソース上にその情報も追記され、ソースコード自体が長くなり、当然ながら読み込みに時間がかかることになります。
また、プラグインによっては動作そのものが複雑で頻繁にデータのやりとりをしたり、膨大なデータをまとめたりするものが加わると処理時間分だけ速度が遅くなります(関連記事表示や外部のデータを読み込んだりするもの、ランキング表示系のものが多いです)
この3つがページの表示速度を遅くする主な原因となります。もちろんこれらがどの程度時間をかけてページ表示しているのかというのは、同じく速度改善でググるとよく出てくる「P3」というプラグインで計測することができます。
が、それは特定のページが表示されるときの時間と負荷であってそれぞれのページのものではないんです(当然ですね)。
それにページの表示速度はサーバーの状況であったり、アクセスの状況であったり・・・いろいろな要素が絡んできますので、一概にプラグインが遅くするというのはどう?と感じます。
それじゃあ何で「プラグインを使わずに・・・」となるのか、プロセス自体(テーマの中のコードをザラザラ読むのか、プラグインファイルを読むのか)は変わらないのに・・・となってきますよね?もちろん自作のコードで必要なものだけを動かせば速度は上がるかもしれませんけど、プラグインも必要なものだけがなるべく実装されているものにすれば同じことだと思います。
もしもプラグインが原因で表示速度が遅くなったと感じたら、前述したように処理することが多かったりデータ量が多かったりする解析系や人気記事系、関連記事系のプラグインなどをひとまず停止してみてはいかがでしょうか?こういうプラグインには必ずログ(データ)のクリアなどの機能があるのでそれもやってみてはいかがでしょうか??
悪意のあるコードなどが仕込まれている可能性があるのウソホント
これまたいきなりですけどWordPressのプラグインを使う方で「悪意のあるコードとは何ぞや??」がわかる方いらっしゃいますか??サイトの改ざんなどをされないようにするにはプラグインを使わずに実装する・・・という方がいらっしゃいますけどそれは本当に改ざんされないようになっているのでしょうか??
プラグインを使わずに・・・と紹介されている機能をいろいろなページから拾って実装したのと、公式配布ページで紹介されているプラグインを使うのとどっちが安全なんだろう・・・私の答えは後者です。
WordPressの公式サイトに掲載されているプラグイン(テーマも)は
によって検証済みのもののみが公開されていて、何かが発見されたりすると非公開になったりすることがあります。ご存知でしたか??もちろんこれで完璧というわけではありませんけど何も検証なしに配布されているわけではないんです。
一方私の中で危険だと思うのが次の2つ
- どんな環境でテストしたのかもわからない、WordPress公式サイトで配布されていない、有料や無料のいわゆる野良プラグイン(野良テーマ)
- どんな環境で使用できるのかが明記されていない「プラグインを使わずに・・・」と紹介されているコード
よっぽどこちらの方が危険だと思いませんか??
不具合が発生する場合があるのウソホント
私はいろいろある便利なプラグインを少しでもたくさんの人に知ってもらいたいので、
- 実際にテストサイトで使ってみた感想(テスト環境も表示してます)
- 日本語にしないと設定や表示がしにくいものは翻訳ファイルの配布
- そのプラグインの基本的な機能
- 環境に合わせてカスタマイズする方法
の4点を主眼に紹介記事を書かせてもらってます。
不具合が発生する主な要因は
- 似たような機能のプラグインを複数使おうとした場合
- 似たような機能を持つテーマで使おうとした場合
- プラグイン自体があまり良いものでない場合
の3つでしょう。私がプラグインの紹介記事を書くときにテストサイトへ導入するときにも「え?」と画面が真っ白になったり、エラーがずらっと表示されるものもあります(当然そうなったものは紹介していません)。
ただこれも環境によるのでひょっとすると開発者の環境ではうまく動作したり、他のプラグインとの競合やテーマとの競合がなければ動くかもしれません。そのために私が紹介するプラグインの記事にはテスト環境を書かせていただいてます。決して自身の環境で動作しなかったからクソプラグインではないと思います。
より安全に複数のプラグインを使いたいなら同じ作者のものだけを使うのが一番いいのではないかと思います。
不要な機能が含まれていたり足りなかったりする場合がある
これは自身のやりたいことだけができるようなものを根気よく探すしかないと思います。中には「これがやりたいのに・・・」ということがしっかりと有料版になっているものも多数あります。
更新するとカスタマイズしたものが元に戻ってしまう
これについては自身で変更したものなので致し方ないと思います。とはいえ、全く更新されないプラグインというのもどうかと思いますので、どこをカスタマイズしたのかを残しておくようにします。
「そんなの面倒だ・・・」そうですよね?普通はパソコンのメモ帳などに書いて保存したり、それをFTPでサーバーにアップロードしておいたりするのが常套手段だと思います。
そんなことしなくても、サイトの中から管理できるようにしてしまいましょう。WordPressのサイトであまり増減のないものに「固定ページ」がありますよね?ここに1つ「カスタマイズメモ」などといった固定ページを作り、カスタマイズした内容を記述しておきます。
公開状態を「非公開」にしておけば、もしも訪問者がURLを直接入力してページを開いたとしても「404エラーページ」を表示してくれます。逆に管理者権限では通常通り表示できますから便利だと思います。
こうなっていればいつでも編集・確認できますから面倒ではないですよね??
安全なプラグインを選ぶ方法やコツなど
最後にたくさんのプラグインを紹介してきた経験からより安全に、より確実なプラグインを探す方法や気を付けることなどを紹介しておきます。
必ず更新の履歴やFAQを確認する
プラグインの公式配布ページにはいろいろな情報が書かれています。人気の度合い、評価、テスト済みのバージョン・・・でも一番確認すべきは更新履歴だと思います。ある程度最近まで定期的に更新されているか?というのがミソになります。長い間更新されていないのはもうすでに放置状態にある場合が多いですし、中にはリリースした状態のままなんてものもあります。
それからもう1つはFAQの確認。不具合や質問に対して返事がほとんどないものはやはり放置状態だと考えたほうがいいと思います。
設定内容のわからないものは使用しない
プラグインには設定画面というのが存在するものがほとんど。英語だから・・・とよくわからないまま「これでいいだろう」と設定してませんか?私も昔はそんな感じでしたが、自身で翻訳をするようになり「え?このプラグインこんな機能もあるの?」と気づくことも多くなりました。日本語で設定できない、探しても日本語化するファイルが見つからないというプラグインはひとまずパスした方が無難だと思います。
またプラグインの中には翻訳できるようになっていないものや、半端になっているものもあります。多数の言語で使える汎用CMSのWordPressで多言語の対応は必須だと思うのですが・・・。やはりこういうプラグインはパスした方がいいのではないかと思います。
このサイトでも翻訳ファイル多数配布してますので検索してみてくださいね。
分かる言語で紹介されていないものは使うのを避ける
いろいろなサイトで使い方などが紹介されている=役に立つ=不具合が少ないプラグインだと思われます。パクリ記事でない限り紹介記事を書いた人は1度は導入したことがある方でしょうから(笑)。プラグイン名+使い方(英語のプラグイン名だけだと海外のサイトがかなりの確率でヒットしますので「使い方」というキーワードを入れた方がいいでしょう)で検索してみていろいろ出てきたら有用なプラグインなのかもしれません。
闇雲に実サイトでプラグインを試さない
プラグインにはデータベースに専用のテーブルを作るものが多いこと、設定情報を保存するのにWordPressのテーブルであるwp_optionsに項目を追加していくものがほとんどで、試しに・・とプラグインを追加してやっぱりやめよう!で停止&削除してもそれらのテーブルやデータは残ったままになるものがほとんどです。これがチリも積もれば山となるでサイトの速度を遅くしたり、サーバーに負荷をかけたりします。
プラグインを試す場合にはもう一つサーバー内に別のサイトをテスト用として作ったり、無料で使えるサーバーでテストサイトを作るなどしてそこで試すことをおすすめします。
長い文章をお読みいただきありがとうございました。

