WordCamp実行委員3年生のechizenyaです。イベントの前日までと1日目(セッションデイ)は全開で運営スタッフモードでセッションは1つも聞いてませんでしたが、2日目のコントリビューターデイは、ほとんど一般参加者モードでガッツリもくもくしてました。
コントリビューターデイは何をやるかほとんど考えてなかったので(事前準備が色々と忙しくて…)、「えいや」で決めてWordPress Codexの編集をすることにしました。1日目しか参加されていない方で、「コントリビューターデイって何?」「Codexって始めて聞いた」と言う方は、ぜひこちらの記事を参考にしてください。
register_activation_hook関数の編集
自分がCodexで編集させていただいたのは、register_activation_hook関数のうちのこの箇所です。
それまでは、使用法として、
[php]register_activation_hook($file, $function);[/php]
しか紹介されていなかったのですが、思い切って、
[php]
class Hoge {
public function __construct() {
register_activation_hook(__FILE__, array( $this, ‘fuga’ ) );
}
public function fuga() {
}
}
$hoge = new Hoge();
[/php]
も加えました。両者の違いは何かと言うと、前者の第二引数が関数を指定しているのに対して、後者はクラスメソッドを指定します。詳しくはWordPress Codexの内容を確認してみてください。
ここからは私の勝手な想像ですが、register_activation_hook関数はWordPress2.0の頃に実装された関数です。
私のような新参者からすれば「いつの話やねん!」て感じです。おそらく、PHPにおけるオブジェクト指向のプログラミングの意識が、まだあまり浸透していなかった頃にcodexが編集されたのかなぁと想像する次第であります。
なんでregister_activation_hook関数なの?
ここまで読んでくださったみなさんありがとうございます。ひょっとしたら「何でわざわざregister_activation_hook関数をやったの?」と思われたかもしれません。
実はこのお話には前段があります。4か月前にWordPress.orgのサポートフォーラームにてこんな質問を投稿しました。
register_activation_hook関数で使われている引数の解釈
ことの顛末はスレッドを一読していただければと思います。重要なのは各スレッドでコメントをいただいた方たちです。実はこの方たちの一部は、コントリビューターデイでリアルに参加されていた方です。
WordPressに限ったことではありませんが、自宅に引きこもりでプログラミングやサーバーの保守などをやっていると、必ず行き詰まります。最近は動画レッスンのサービスが充実していたり、WordPressのようにサポートフォーラムが充実していてある程度の解決もすることはできます。
それでも「その分からなかった内容を人に説明できるようになったか」と問われると、非常に怪しいものです。だからこそコントリビューターデイのような手を動かすイベントに参加して、直接フォーラムで回答してくださった方にお会いして、さらに詳しくアドバイスを聴くと言うことは大変貴重な体験だと思います。
おそらく公式プラグインや公式テーマの作成、テーマレビューでも同じことが言えるのではないでしょうか?
コントリビューターデイって「もくもく会」?
コントリビューションを日本語で直訳すると「貢献」になり、何やら重々しく捉えらるかもしれません。でも自分のように、Codexが自分にとって分かりやすく、編集することもコントリビューションの一つだと思います。
次回、WordCampが開催されたときにコントリビューターデイも開かれるかどうかも分かりません。ですがもしコントリビューターデイが開催された場合は、みなさん一緒に手を動かしてもくもくしましょう。少なくとも自分はたとえ実行委員をやってても、すみっこの方でもくもくと手を動かしてますよw
最後に世話役をしてくださったJOTAKI Taisuke さん、フォーラムで回答をしてくださったkimipooh さん、Okamoto Hidetaka さん、msioさん、ありがとうございました!