WordPressの自作プラグインの作り方

スポンサーリンク

WordPressには、便利な「プラグイン」という機能があります。

  • お問い合わせページを作りたい
  • サイトマップを作りたい
  • グラフを作りたい
  • サイトのスピードを上げたい

などなど。。。用途は様々ですが、たいていのことはこのプラグインで何とかなってしまうほど種類が豊富で高機能なものが多く、さらにはほとんどのものが無料で使えてしまいます。(一部の機能のみ有料のものもあったりします)

しかしながら、そんなプラグインは大衆向けであり、個人向け(1サイト向け)にはもちろん作られていません。

そのため、探してもみつからない機能のプラグインは自作する必要があります。

本記事の内容

  • 自作プラグインの作り方がわかる
  • なぜ独自の機能をプラグインで作るのか知ることができる(技術者目線)
スポンサーリンク

自作プラグインの作り方

WordPressで「自作プラグイン」を作るには多少のPHPFTPの知識が必要になってきます。

この記事を読んでいる時点でその点については問題ないと思いますが、FTPに関しては以下の記事を参考にしてみてください。
https://nekomiblog.com/ftp/

また、WordPressではFTPがわからなくてもプラグインを導入すれば大丈夫です。
https://nekomiblog.com/file-manager/

では、本題に入りますが自作プラグインの作り方ですが、まずは

プラグインが格納されているディレクトリ

を覚えましょう。

自作にかかわらずWordPressのプラグインは

/wp-content/plugins

に格納されます。
プラグインを自作しない方でもこれは覚えておきましょう。

プラグインは何かとエラーのもととなりやすいので、直接このフォルダにアクセスしてプラグインを削除したりできると便利です。

今回はここに「my-plugins」というフォルダを作ってみます。
(わかりやすいように自作するプラグインの名前などにしましょう。)

パスは「/wp-content/plugins/my-plugins」になります。

その作ったフォルダの中に一つだけPHPファイルを作りましょう。
ファイル名は何でもよいですが、「main.php」やプラグイン(作成しフォルダの名前)にするのが一般的です。

作成したファイルに以下の内容を記述します。

<?php
/*
Plugin Name: (プラグインの名前)
Description: (プラグインの説明)
*/
?>

これだけで完了です。

今回はあくまで作成したプラグインの公開は行わないものとしています。
プラグインの公開を行う場合はライセンス等の記述も必要になってきます。
詳しくはこちらを見てください。
https://wpdocs.osdn.jp/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E3%81%AE%E4%BD%9C%E6%88%90

 

メニューバーからプラグインにアクセスしてみてください。

すると。。。

このように作成したプラグインが表示されています。

これで自作プラグインの完成です。

とても簡単ですね。

 

あとは有効化するだけで大丈夫です。

先ほど作成したPHPファイルは、いわば「functions.php」です。
機能もまったく同じものです。

ですので、作成したPHPファイルに処理を書き込んでいくことで独自の処理を実装することが可能になります。
多機能なものであれば、クラスファイル化するとなおよいでしょう。

 

なぜ独自の機能を自作プラグインで作るのか

 

先ほど、自作プラグインは「functions.php」と全く同じ役割を果たす。
と書きました。

では、こう思いませんか?

自作プラグインを作る必要あるの?functions.phpに書けばいいじゃん

確かにそうかもしれません。

 

なぜ、「functions.php」に書かずに「自作プラグイン」にするのか。
それには大きく二つの理由があります。

 

多人数開発

 

サイトの開発を必ずしも一人で行っているとは限りません。

多人数で開発を行っていて、一斉にいろんな機能を開発する際に「functions.php」を書き足していったのではどう考えても不便です。

Gitなどでソース管理をしていたとしてもコンフリクトの嵐待ったなしでしょう。

そこで、機能ごとや開発者ごとにプラグインを分けることでスムーズに開発を行うことができます。
また、同時にテストもしやすくなります。

 

機能ごとに分けることができる

 

ありとあらゆる機能を「functions.php」に書いていった場合、最終的にファイルがとんでもない長さになってしまいます。

そうした場合に、何の機能がどこに書いてあるか探すだけで一苦労です。

そこで、自作プラグインで機能ごとに分けることで管理しやすくなります。

また、いらなくなった機能をプラグインを無効化するだけで停止することも可能です。

 

コメント

タイトルとURLをコピーしました