WordCamp Kansai 2016 に登壇しました #wck2016

WordCamp Kansaiの1日目に「大学におけるWordPressサイトのインハウス開発」というセッションで登壇しました。

セッション概要とスライドは下記。

大学のウェブサイトをインハウスで開発、運営しており、一部にWordPressを採用しています。これまでの開発経験の中から、主に機能追加の要望に対して「できなくはない」ケースや、「シングルサイトかマルチサイトかの選択」においての意思決定についてお話します。日々の更新業務を遂行しつつ、インハウス開発を行うヒントになればと思います。

「こういう話を共有したい」と自分から応募していながら、技術の話ではなく、正解もない話を、どのようにセッションとして纏めるか難しく、かなり悩みました。伝えたかったことがきちんと伝えられたか…終わっても不安だったりします。

スタッフの方によると、参加してくださった方は14名だったそう。皆さんの環境でも参考になりうる、何かしらのヒントを得た方がいらっしゃったら幸いです。ありがとうございました。

余談

WordCampの登壇は今回が3回目です。過去のスライドはSlideShareにアップしてましたが、今回を機に全てSpeaker Deckにアップし直しました

「WordPressサイト制作におけるデプロイメントを考える」フォローアップ #wckansai

先の投稿でも書いたとおり、6月7〜8日開催されたWordCamp Kansai 2014に参加し、公募枠で登壇してきました。

セッションを聞いてくださった皆様、ありがとうございました。

セッションのタイトルは「WordPressサイト制作におけるデプロイメントを考える〜Gitとデプロイメントサービスの活用〜」です。概要はというと、WordCamp Kansaiのサイトからの引用になりますが:

現在WordPressサイトの構築や更新には、FTPもしくはSFTPソフトを利用したデプロイメントが主流です。サイト全体の引っ越しであれば、あるいはrsyncやscpといったコマンドを使う場合もあるでしょう。しかし手動で行う作業や、不慣れなコマンドを使うことにより、ミスしたり、時間が掛かったりしませんか?

一方で、最近は開発にGitを用いたVCを実践している、あるいは検討、勉強しているという方も少しずつ増えてきている反面、実務でわざわざ使う利点をイマイチ見いだせていない…という方もいるはず。

そこでGitとデプロイツール(サービス)を組み合わせたテーマ、プラグイン、サイト全体の、より効率的かつスピーディーなデプロイとその自動化を提案します。また、WordPressサイトにこのワークフローを導入する際の注意点も考えます。

まだまだ、個人と職場両方の場で模索しながらこのワークフローを試しています。実績に基づく「これをやっておけばよい」という正解をシェアできるものではありませんが、同様に模索している方や興味ある方と現在のノウハウをシェアしあい、インスパイアしあえるきっかけになればと思います。

副題に「デプロイメントサービス」とありますが、ツールも紹介しています。アウトラインはこんな感じ。

  • What is Deploy/Deployment?
  • Today’s Agenda
  • Where should I git init?
  • Code Deployment
  • Contents Deployment
  • More Advanced Deployment Tools
  • Towards a Full Stuck WordPress Development Tools
  • Managed WordPress Hosting
  • Message

このうち、「Contents Deployment」と「Managed WordPress Hosting」は時間が足りなく飛ばしましたが、Slideshareにアップしたスライド(下記)に入っています。

伝えたかったこと

ツールやサービスなど難しいことを駆け足で話しましたが、もっとも伝えたかったことは3つの「Message」です。

  1. 何はともあれGit。
  2. よりストレスフリーなデプロイメントを目指してデプロイメントのツールやサービスを使ってみよう(車輪の再発明はしない)。
  3. Full Stack方向を意識しつつ、情報のアンテナを張り、手を動かしてみる。

特に3つめなのですが:

20140607_wpkansai-slide_ver6-Final-128

紹介したデプロイメントツールとサービスも、手を動かして使ってみないと理解しづらいと思いますし、実戦投入できるかどうか?するのであればどんなプロジェクトでできそうなのか?判断が付けづらいかと思います。しかし、WordBench Osakaを始め、関西のコミュニティではGitや翻訳など、手を動かして何かproductiveなことをしよう!と挑戦されている印象があります。Gitで一歩、いや、数歩進み始めた方が「次の挑戦に検討してみる題材の1つになれるのでは?」とは今回応募した理由の1つです。皆さんどうでしょうか?

スライドのフォローアップ

登壇後に頂いた質問では、飛ばしたContents Deploymentに関わる内容もありましたので、そのあたりを中心に下記に補足しておきます。

Contents Deployment

コンテンツ、つまりDBと/uploads/ディレクトリをローカル、ステージング、プロダクションのサーバー間で簡単にデプロイする方法ですが、選択肢はほとんどありません。更に、サーバー間で同期する方法も多くはありません。

真っ先に考えられるのはrsyncやmysqldump等のコマンドを使ったスクリプトを作成し、サーバーに置いておき、手動またはCronを使って自動で実行する手法です。URLの置換にはシリアライズされた値にも対応する必要がありますが、WordPressのDBのURL置換用のスクリプトが既に存在するのでそれらを使うと簡単です。もう既に何かしらの自動処理を独自で行ってらっしゃる方はおそらくこの方法ですよね?

WP-CLIがインストールされていれば、WP-CLIのwp dbwp search-replaceを使うのも手でしょう。wp search-replaceはシリアライズされた値にも対応しています。

より簡単に、であればプラグインの出番です。しかしこれも選択所はほとんどなく、WP Migrate DB Proと、RAMPという2つの有料プラグインぐらいしかありません。

WP Migrate DB Proはローカル、ステージング、プロダクション、それぞれのサーバーに構築したWordPress全てにインストールし、ボタン1つでDBを指定のサーバーへ、URLを適切に置換した上でアップしてくれます。Developer以上のライセンスであれば、メディアファイル(/uploads/にアップした画像など)も差分だけ転送してくれるアドオンや、WP-CLIに対応するアドオン(現在beta)も用意されています。公式サイトにはキャプチャ動画がアップされているので興味のある方は見てみてください。

RAMPは、ステージングサーバーのコンテンツをプロダクションサーバーへ差分デプロイする為のプラグインです。使用している人は少ないのか、あまり情報はありません。

Notes

注意点、もしくは要検討するべき点を3つスライドの中で挙げましたが、他にもあります。

WordPressのメンテナンスモード

デプロイ中にサイトへアクセスすると、もちろん、うまく表示されません。デプロイ内容にもよるとは思います。ですので、デプロイ中の処理も考えなければいけません。個人ブログやアクセスが少ない時間があり、差分が発生するファイルも少なければ、アクセスが少ない時間を狙いデプロイする方法がありますね。しかし、サイト全体をGitの管理下に置いているサイトや、アクセス数が多いサイトではWordPressのメンテナンスモードを使いましょう。ベストプラクティスとして知っておいて損はしない機能でもあります。詳しくは下記のサイトを参照してください。

Managed WordPress Hosting

スライドの中では海外の Managed WordPress Hostingサービスしか紹介していませんが、日本のホスティングサービスでも同様のステージング+デプロイ機能を備えているサービスがあることを後で知りました。

WordCamp Kansaiのスポンサーでもあるアイティーエー株式会社さんが運営しているWordPress専用レンタルサーバーでは、「2つの環境をセットで用意」と「2つの環境の同期」の2つ機能を実装してらっしゃるそうです。気になる方は試してみてはどうでしょうか?

VersionPress(2014-06-22 22:46追記)

コードをGitでバージョン管理するのであれば、コンテンツ(メディアファイル+DB)も何とか併せてバージョン管理できないもんだろうか?とやはり皆考えるようで、先日VersionPressというプラグインの開発が発表されていましたので記事にしておきました

WordFes Nagoya 2013で事例発表をしてきました。

先週の土曜日、8月31日に開催されたWordFes Nagoya 2013の活用事例発表会セッションにて登壇してきました。当日の発表者は4名で、僕はその3番目に「大学のウェブサイトをインハウスで構築・運営しています。その中でWordPressをを使っています。ノウハウを3つ紹介します。」というやたら長いタイトルで話してきました。

僕がウェブマスターとして、インハウスで携わっているのがテンプル大学ジャパンキャンパスのウェブサイトで、現在その中の4つのセクションでWordPressを使っています。その経験から3つの事柄を「ノウハウ」として紹介させてもらいました。

紹介したノウハウは次の3つです。

  • スターターテーマの選択
  • イベント機能をプラグインで実装
  • カスタム投稿タイプの名称
WordPressを採用した4つのセクションと、その利用概要。

WordPressを採用した4つのセクションと、その利用概要。

びったりな言葉が見つからず「ノウハウ」としましたが、もしかしたらお勧めプラグインやティップス、コードスニペットの紹介を期待させてしまったかもしれません。また、「みなさんスターターテーマはご存じですか」との問いかけに(少なくともその場では)ポジティブな反応が得られなかったので、初心者の方が多く、内容が難しすぎたのかもしれません。

ともかく、内容はどちらかというと制作工程の中での「設計」の部分に当たります。頭の片隅程度に置いておき、今後、役に立つ時があれば幸いです。

Ustream動画の録画がここに公開されています(3番目に登壇)が、最後の「カスタム投稿タイプの名称」は時間が足りなくなり省略したので、内容をここに少し書いておきます。

Continue reading

WordCamp Tokyo 2011 に参加しようか迷っている方へ

Wapuu | Tokyo, Japan

公式サイトやTwitterFacebookなどで既に様々な発表を行っていますが、11月27日(日)にWordCamp Tokyo 2011を開催します。関東圏では2008年と2009年の東京、2010年の横浜に続き4回目の開催となり、日本全体としても9回目のWordCampになります。今回のWordCamp Tokyo 2011は、「なぜWordCampを開催するのか?東京で開催するWordCampとは何か?」という根っこから改めて考え、新しい運営体制も試みてみようと、僕が6月に手を挙げてプロジェクトをスタートさせました。つまり言いだしっぺであり、実行委員長です。

リレーブログ

さて、WordCamp Tokyo 2011当日まで3週間を切ったこのタイミングで、スタッフによるリレーブログをスタートさせることになりました!

残り3週間、つまり21日という数字はスタッフの人数よりも少なく、毎日誰か1人ブログを書いていくと日数が足らないやん!どうすんのん!という心配はさておき・・・とにもかくにもトップバッターを言い渡された僕が書かないとリレーをスタートできません。

初めての方やこれまで敬遠されてきた方々にこそ

WordCamp Tokyo 2011は、これまでWordCampに参加された方や、デベロッパーの方たちにも、もちろん引き続き参加してよかったと思うイベントにしたいと思っています。加えて、今回は特に意識して、イベント(特にセッションの構成)を作るにあたり対象とした方々がいます。

「WordPressをさわり始めたばかりだから自分には難しそう。」
「PHPが分からない初心者だから聞いても難しそう。」
「技術系のカンファレンスっぽいから、技術職(エンジニアやプログラマーなど)ではない私にはつまらなそう。」
「WordPressは使ってるけど、コードがどうのやら、用いられている技術がどうとか、そういう話は一切興味がない。」
「WordPressのマニアだけで盛り上がっているカンファレンスでしょ?」

・・・という思いで、参加してみようかどうしようか悩んでいる方々、今までWordCampを敬遠されてきた方々にこそ、是非今回のWordCamp Tokyo 2011は来ていただけたらなと思います。

WordCampは「ユーザーやビギナーはお断りの技術系カンファレンス」である決まりはどこにもない。ユーザーも開発者も、ビギナーも上級者も、分野や技術レベルなどに関係なく、WordPressという”道具”を作る人と使う人が「集い」、そして「学び」、さらに「お互いを知る」。そういうイベントを目指したい。加えて、このWordCampが何かのきっかけや始まりになったらとても嬉しいと思います。

セッションへの参加(無料です!)も、懇親会への参加(3,000円です!)も、まだまだ受け付けていますので27日は是非品川シーサイドは足を運んでみてください!
(とは言え、これまでにない非常に早いペースでチケットは売れているので購入は是非お早めに!)

追記: WordPressの行く先、人々、思索

先日WordPressの行く先、人々、思索 « Waviaeiを書いたのですが、その中で一つ忘れていたことに昨日気付かされました。東京の特徴の1つ。それは外国人の多さです。日本に住む外国人の数(外国人登録者数)が、都道府県別で一番多いのは東京都で、全国の19.6%を占めますからね。(出典: 法務省:平成22年末現在における外国人登録者統計について

いや、むしろ、英語を共通言語としてコミュニケーションができる様々な国の人(日本人含む)の多さ、と書くのがより正しいかもしれません。WordPressは世界で最も使われているブログ・ツールです。開発チームのコミュニケーションに使われる言語は英語ですし、最新のニュースを得られるのも英語の記事やドキュメントです。そして、首都圏にも英語でWordPressを使ったり、関連の仕事をしている人たちがたくさんいます。始めようと思い、興味をもっている人たちもたくさんいます。

そして、英語をツールとして学んだり、コミュニケーションをしたり、ネットワークを広げることに飢えている人たちはたくさんいると感じています。