第1回 WordBench千葉勉強会

去る2012年10月14日(日) 千葉市蘇我勤労市民プラザにて開催された「第1回WordBench千葉勉強会」に参加した。
千葉県にゆかりのない私が参加してよいものかと迷ったものの、決めてとなったのはハンズオン形式だ。先月のWordCamp TOKYOではスケジュールがあわずに断念したハンズオン講座を、千葉で体験するぞ!と総武線快速に乗り込んだ。

chiba

前半は、
「パーマリンクをマスターしよう リライトルール・オールライト Lite版」
アクセスされたURLをパラメータに変換する規則を記録してあるのが、リライトルールだ。ダッシュボードにパーマリンクを設定する箇所があるのに、なにゆえリライトルールが必要になるのか?
いわれるままに、

[PHP]

[/PHP]
とやるだけでWordPressのリライトルールがいろいろ出てきた。
そして、ここに出てこない「auther/作成者名/年/月」という独自のパーマリンクを追加するのが本日の課題である。リライトルールを追加するには、アクションフックのinitを利用し、add_rewrite_rule()という関数で行う。

[PHP]
function add_author_monthly_archive_rule(){
add_rewrite_rule(‘author/([^/]+)/([0-9]{4})/([0-9]){2}/?’ .’index.php?author_name=&matches[1]&year=$matches[2]&monthnum=$matches[3]’);
}

add_action(‘init’, ‘add_author_monthly_archive_rule’);
[/PHP]

指定するURLパターンが正規表現のため苦戦するものの、これができると応用がきくのだ。たとえば、「/カテゴリー名/年/月」は、これまでにも要望をいただいたことがある形式だ。WordPressではできないよ!と言い張っていたのが悔やまれる。これからは、どんとまかせてほしいものだ。

ポイントとして、functions.phpにこのコードを記載しただけでは動作せず、パーマリンクの設定画面でいったん(デフォルト以外の)どれでもよいので「更新」ボタンを押すことが必要だ。この操作でリライトルールがoptionに保存される。
»講師のJim912さんによる資料はこちら

後半は、脱コピペプログラマー「PHPペアプログラミング大会」
参加者のだれかとペアになってカレンダーのプログラム作成である。千葉県在住の大学生と組むことになった。学生ながらもWebサービスを開発しているという、彼のzen cordingさばきに目を奪われた。秀丸派の私は後半のロジックで巻き返し、なんとか時間内に今月のカレンダーを表示することができたのだった。

書籍やネットでこのような情報をみるものの、ひとりではなかなか手を動かさないので、よい機会だった。おつかれまでした!

2件のコメント

  1. >nobitaさん、
    こんにちわ!
    あらこんなの知らなかったです、嬉しい!
    Free 3-Columnは合ってるけど、High Qualityじゃないのにな?

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください