movable type meetup json - mtddc meetup tokyo 2014

Post on 12-Jul-2015

1.495 Views

Category:

Internet

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Movable Type Meetup JSONJSONを活用したデータ管理の効率化とパフォーマンスアップ

2014-11-29MTDDC Meetup TOKYO 2014

奥脇知宏(@tinybeans) 柳谷真志(@mersy)

bit part 紹介

•奥脇知宏(@tinybeans)、柳谷真志(@mersy)•Movable Type、Movable Type Cloud、PowerCMSを利用した構築がメイン業務

• Six Apart の ProNet、Alfasado の PowerCMS Partner Pro

bit part 紹介 / mersy

•柳谷真志(やなぎやまさし)•ディレクション、進行管理、MTMLテンプレート作成

•アイ・ペアーズ株式会社

bit part 紹介 / tinybeans•奥脇知宏(おくわきともひろ)•MTAppjQuery等のプラグイン開発、MTML、その他フロントエンドやバックエンド少々

•かたつむりくんのWWW•Movable Type 5.1 プロの現場の仕事術

bit part 紹介

• http://bit-part.net•Movable Type 6 本格活用ガイドブック2013年11月30日発売

bit part 紹介•MTAppjQuery• flexibleSearch •MTML Completions• Data API Extend Search•その他のMTプラグイン

Movable Type Meetup JSONJSONを活用したデータ管理の効率化とパフォーマンスアップ

Movable Type 6

• Data API

• Chart API

• 非公開日指定

• Google Analytics との連携

• メッセージセンター

Movable Type 6

• Data API

• Chart API

• 非公開日指定

• Google Analytics との連携

• メッセージセンター

Movable Type meets JSON

What’s JSON?

• JSON 【 JavaScript Object Notation 】

• JSON(ジェイソン、JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptにおけるオブジェクトの表記法をベースとしているが、JSONはJavaScript専用のデータ形式では決してなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しに使えるよう設計されている。http://ja.wikipedia.org/wiki/JavaScript_Object_Notation

What’s JSON?

• JavaScriptにおけるオブジェクトの表記法を応用したデータ形式。JSONで表記されたデータは、JavaScript上ではコードとして実行するだけで読み込みが完了する。JSONでは、データ全体を配列またはJavaScriptにおけるオブジェクト(キーと値のペアを列挙した構造体)として記述する。値として利用できるデータ型は整数型、浮動小数点数型、文字列型、ブール型(真偽値)、null(値無し)、配列、オブジェクトである。http://e-words.jp/w/JSON.html

What’s JSON?{ "items": [ { "nickname": "tinybeans", "firstname": "Tomohiro", "lastname": "Okuwaki" }, { "nickname": "mersy", "firstname": "Masashi", "lastname": "Yanagiya", } ]}

Data API on Movable Type 6

• Movable Type meets JSON

• Movable Type に格納されたデータを JSON で受け渡し

• マルチデバイスのバックエンド

• JavaScript メインのアプリケーション(Angular などのフレームワーク、 mastache などのテンプレートエンジン)

Data API on Movable Type 6

Data API on Movable Type 6

• Data API は記事単位の塊のデータからデータを取得して JSON

に変換

• タイトル、本文、続き、概要、キーワード、タグ、そしてカスタムフィールド・・・

だったらデータも JSON でいいじゃん

MTAppJSONTablesince MTAppjQuery v1.6.0

Movable Type Dashboard meets JSON

MTAppJSONTable

• Movable Type の管理画面と JSON の出会い

• JSON でデータを管理

• CSV との連携とか

MTAppJSONTable

• MTAppJSONTableとは?概要欄や複数行テキストのカスタムフィールドを表形式の入力欄に変換して、その表に入力された値をJSON文字列にして元のテキストエリアに保存する

• demo

JSON to MTML

• JSON文字列をMTのテンプレートで扱うには?=> MTタグで扱えるMTの変数に変換する必要がある

• json_decode モディファイア(MTAppjQuery)

• Serializerプラグインhttp://www.h-fj.com/blog/archives/2014/07/29-092632.php

• JSON2MTMLhttps://github.com/alfasado/mt-plugin-json2mtml

JSON to JavaScript and PHP

• もちろん静的出力だけでなく動的にも扱える• JavaScript => JSON.parse(str);

• PHP => json_decode(str);

Serializer

• MTAppjQueryがない場合を想定して、先程のMTAppJSONTable

のデモと同じJSON文字列を「続き」欄で持っているとする

• demo

Movable Type Dashboard meets JSON

• 管理画面で JSON

Movable Type Dashboard meets JSON

• 他のウェブサービスのAPIから JSON を取得して連携=> Google Map API etc.

• でもやっぱりData APIとの連携=> Movable Type Data API

Movable Type Dashboard meets JSON

• 管理画面とData APIの連携=> 例えば関連記事を結びつけたい

Movable Type Dashboard meets JSON

• 今までは、=> 手動で関連付けたい記事のIDをカスタムフィールドに保存 or

=> プラグインを開発して実装

Movable Type Dashboard meets JSON

• Data API を使えばフロントエンドの知識だけで実装可能に

• jQuery.ajax, listEntries

• MTAppListing(v1.7.0追加予定)

jQuery.ajax or listEntries

• Ajaxで記事一覧を取得 → 選択 → IDをセット

• demo

MTAppListing

• demo

MTAppListing

• 関連記事を選択

• 記事を選択してグルーピング

• 外部のAPIから情報を取得して関連付け

JSONをPOST してもいいよね?

POST from Movable Type

• 取得だけじゃなくて他の API に POST

• Slackにポスト

• Backlogにポスト

• Trelloにポスト

Post to Slack

Post to Slack

• Slackを使った公開承認フローを実装

• demo

すべての要は JSON

Enjoy Movable Type and JSON !

ご静聴ありがとうございました。

MT::Lover::bitpart

Update bit part, everyday!!

top related