WordPress

WordPressのプラグイン開発のときに使うPluginsや役立つサイトなど

はじめに

 cloud9便利です。php7.0以上の環境を作るのに一手間ありますが、ブラウザ上で開発環境が揃ってしまうのは素敵です。今回、プラグイン開発をするにあたり、使用したWordPressのPluginsをメモしておきます。

プラグインとPlugin(s)

 文中に幾つかプラグイン/Plugin(s)の言葉が出てきますが、下記のように使い分けてます。

  • プラグイン:自分が開発をした、便利になるはずのツール。
  • Plugin(s):WordPressのプラグインディレクトリで公開されている、使うと便利になるツール。

使用した標準機能

wp-config.php
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_DISPLAY', true ); // Turn forced display OFF
define( 'WP_DEBUG_LOG',     true );  // Turn logging to wp-content/debug.log ON
define( 'WP_POST_REVISIONS', true ); // Disables revision functionality
  • WP_DEBUG : デバッグモードON。通常の状態はOFF。各種デバッグ機能が使えるようになる。
  • WP_DEBUG_DISPLAY : デバッグ情報を画面に出力する。phpのNoticeなどの細かいエラーとか表示されるようになります。
  • WP_DEBUG_LOG : ログを出力してくれます。「リダイレクトが発生して画面にログが残らない!どうしよう!?」save_postのアクションの実行時、重宝します。error_log("ログに残したい文言");とすることで記録されます。
  • WP_POST_REVISIONS : 記事のリビジョン管理を止めます。

使用したPlugins

Query Monitor

 SQLクエリの実行時間が実行したページで確認することができる。他のPluginでDebug Barもありますが、確認できる項目はQuery Monitorのほうが多いです。

 呼び出されるフック(Hook)も確認できます。

Easy Query – WP Query Builder

 WP_Queryのオプションを生成してくれるPlugin。細かいオプションの指定は有料版を購入するか、自分でマニュアルを参照しながら書いていく必要がありますが、大まかなオプション指定はできるのでマニュアルを紐解きながらWP_Queryのオプションを書かなくていいので便利です。

WP Crontrol

 WordPressのcronの設定状況が確認できるPlugin。登録済みcronの即時実行ができたり、削除したりすることができる。追加することもできるが、実行内容をfunctions.phpにコードを書く必要がある。

役立つサイト

WORDPRESS PLUGIN BOILERPLATE GENERATOR

  • プラグイン名
  • プラグインのスラッグ
  • プラグインの紹介URL
  • 開発者名
  • 開発者メールアドレス
  • 開発者ホームページ

 これらを入力するだけで、あっというまにプラグイン開発に使えるテンプレート(ボイラープレート)が生成されます。生成されるファイルが多いので最初は戸惑いますが、機能ごとでファイルが別けてあることに気づくことができれば、きれいなプラグインを作ることができると思います。

GenerateWP - User friendly tools for WordPress developers

 マニュアルを読みながらコードを書くより、穴埋め項目に記入していくだけで該当するコードを生成してくれるサイト。ただ、ちょっとパラメータが多すぎ&意味分からない時があって、マニュアルを確認しながらコードを書くことになることも しばしば。ただ、ゼロの状態から作るよりは楽なので便利。

さいごに

if link is 404(broken), then set to private.

 宣伝です。今回、開発したプラグインです。記事ごとに指定できるURLを、定期的にクロールします。指定URLがエラー(404, 503など)だったとき、その記事を非公開にします。

 開発をしてるWebサービスのポートフォリオを整理して公開しようと思ったのですが、なんらかの理由で公開停止したWebサービスがポートフォリオから自動的に消えるといいなと思っていたのですが、Laravelでポートフォリオ用のサイトを作るのも時間コストがかかりすぎるし、WordPressで久しぶりにプラグイン開発をしようと思い、if link is 404(broken), then set to private.が出来上がりました。

もっともっと楽できるはず!

 もっともっと楽に開発できると思うので、「WordPressのプラグイン開発してるとき、コレ使ってます」とかあれば教えてください!