WordBench東京 2014年11月勉強会 プラグインもくもく会でプラグイン制作で分からないことを聞いてきた!
※本ページはプロモーションが含まれています
2014年11月23日に行われた「WordBench東京 11月勉強会:みんなでつくる勉強会:プラグインもくもく会」に参加してきました!
今WordPressのプラグイン作成に取り組んでいる僕にとってピッタリの勉強会だったので、充実した時間を過ごすことができました。
先週開発環境系エントリ尽くしだったのはこのためです。
勉強会で自分が学んだことを紹介します。
こちらの記事も要チェック!
- 初心者でもOK!WordPressでローカル環境を作るならLocal by Flywheelが簡単で高機能!
- ChromeでiPhoneなどのスマホサイトのデザインをチェックする方法と使い方
- WordPressのテーマ・プラグイン開発環境をVagrantを使い簡単に構築する方法
- WP-CLIのインストール方法
解決したこと、学んだこと
WordPressの使い方や運用する方法はネット上に情報が多く、調べればなんとかなるが、テーマやプラグイン、コア開発などは情報が少なく、1人で勉強するのはかなりキツイ。
実際にプラグインを作っていて調べきれなかったことを聞いてきた。
プラグインアップデート時のファイル更新について
WordPressのプラグインを使用していて不便だなと思うのが、表示系のプラグインはHTML構造を変えたい時はプラグインファイルを直接編集しなければならないということ。
この方法の問題点は、プラグインをアップデートすと編集した部分が元に戻ってしまう。
「WordPressで最近のアクセス数が多い人気記事をサイドバーに表示する方法」
で紹介しているやり方がまさにそうだ。
僕がやりたいことは、プラグイン内にユーザー独自のテーマファイルを作成できるようにし、プラグインをアップデートしても自分の思い通りのHTML構造を実現できるというもの。(僕のプラグイン内だけだが。)
これを実装する際に問題になるのが、プラグインをアップデートした時にユーザーが作成したファイルは残るのかという問題。
結論としてはユーザーが作成したファイルも削除されてしまうとのこと。
考えていたことが不可能だと思ったら、プラグインインストール時に「wp-content/plugins」フォルダ内にテーマファイル用のフォルダを作成するという方法を教えてもらった。これならアップデートした時でもバッチリ残る。
他のプラグインでも、キャッシュファイルをここに作る人もいるらしい。
注意点はプラグインを無効にしたり削除したりする時に作成したフォルダも削除するようにしておくこと。
わからないことが一つ解決した。
HTMLの分離
プラグインを作成して気になったのが、管理画面用のHTMLコードがプラグインファイル内に書かれていること。
「汎用的な管理画面付きのWordPressプラグインのテンプレート」を見てみると、100行目付近でPHPコードの途中にHTMLコードが入っている。
WordPressで表示されるブログ部分は、処理ファルとテーマファイルは別々になっているのにプラグイン内では処理とHTMLが混在しているのがなんとなく気持ち悪い。
この点についても聞いてみたが、WordPressのプラグイン内で処理とテーマを分ける機能は無いとのこと。
なので、独自関数を作り、ファイルの名前を引数としてあげると外部ファイルをincludeかrequire_onceするのが良いようだ。
成果報告
今回の勉強会内で作成したプラグインの発表会も行われた。
・関連ページをいい感じに出せるプラグイン「Related Posts Line-up-Exactly by Milliard」
・モンハコの@mon8coさんの、文中の最初のh3タグの前にgoogle adsenseを出力するプラグイン
・「。」のあとに<br>を入れて、「。。」の場合は<br><br>を入れる。プラグイン
・投稿や投稿タイプの記事をCSVでエクスポートできるプラグイン
などなど、様々なプラグインが開発されていた。なかには初めてプラグインを作る人もいて、デモ用のコードを自分で動かし、手を加えるなど、何かしら手を動かすのは良いなと思う。プラグイン開発というとハードル高そうだが、初心者もOKなのが素晴らしい。
懇親会
僕がイベントに参加するのは自分の知識を増やすためだが、懇親会で色んな人との繋がりを作るのも大きな目的になっている。そしてなにより、いろんな話を聞けるのがオモシロイ。
今回の懇親会ではWordPressのコアの話や、コードの書き方が統一されていない話や、ユーザーのセキュリティ意識の低さなど、技術者目線からの話を聞けたのでとても充実した時間を過ごすことが出来た。
おわりに
プラグイン開発関連の情報は少なかったり間違ってたりするので、実際に開発している人と話をできたのはとても良かったです。
また、開発者やブログの運営者、その両方に当てはまる人、いろんな人がWordPressというオープンソースを通して繋がっているのが実感でき、そういうのっていいな〜〜と、しみじみ思いました。
最後に、WordBench東京の運営者の皆さんのお陰で楽しい時間を過ごせました!本当にありがとうございます!お疲れ様でした!プラグイン開発頑張ります!!
↓プラグイン開発にオススメの一冊