JSONTable を作りたかった訳

このエントリーは Movable Type Advent Calendar 2014 の18日目の記事です

Movable Type Advent Calendar 2014 - Adventar
http://www.adventar.org/calendars/359

MTAppJSONTable を MTAppjQuery v1.6.0 でリリースしました。
先日の MTDDC Meetup TOKYO 2014 でも Movable Type Meetup JSON っていう(謎な?)タイトルでセッションさせてもらいました。

JSONをベースにという話をさせてもらったのですが、JSONTableはこういうデータの使い方をしたいという希望があったので今回の開発に至りました。

カスタムフィールドでやる場合

たとえばよくある不動産サイトのページ。


アイ・ペアーズがはいってるビルです)

よくありますよね。写真があって、物件情報が記載されているようなページですね。

これをMT標準のカスタムフィールドでやろうとするとこんな感じの入力欄になってしまいそうです。

入力欄が縦に伸びすぎていてちょっと使いにくそうですよね。
カスタムフィールドが多いのでデメリットも多そうです。
(MTAppjQuery もJSロードしますよね?という話はおいといて)

なので、出来るだけフィールドをまとめてしまった管理画面を作りたいというのがJSONTableになります。

MTAppJSONTable のサンプル

こういう入力欄をもたせることで、以下の感じの出力結果を用意できます。

直感的で分かりやすい情報入力欄を提供できるんじゃないかな?と思います。

特定の行の値をMTのタイトル欄の値として渡してあげることで、一覧画面でも問題無く使えます。

もう少し作り込めば専用入力欄といってしまうこともできそうですね。

改善点

現状の仕様だとヘッダ(この場合の各行の見出し)のセットとその並びを指定しないといけないなど、user.jsで書かないといけないことが多いのが少し使いづらい点としてはあります。
場合によっては行や列を自由に追加して使いたいという事もあるだろう、という判断から今のような仕様になっています。
この辺をもう少し簡単に設定出来るようなUIを用意したいな、と考えているところです。

似たような入力欄のカスタマイズは、Snippetプラグインでもできそうですし、藤本さんが開発中のFreeLayoutCustomFieldプラグインでもできそうです。また、アイデアマンズさんが開発中のFlexFieldも同様の機能を持っているようです。
みなさん考えてる事は大体同じですね。

今回の例では不動産サイトですが、製品情報を持つ様なページなど色々なところで代用出来ると思います。
ただ、現状だとExcelみたいな表計算のソフトのようには使えないので、この辺りは機能追加して新版を近いうちにリリースする予定です。


昨日のエントリーは広島のnasa114さんの「AWS版Movable TypeをSSL対応する - focusmark.jp」でした。
明日のエントリーは凄腕ディレクター能勢さんですね。楽しみですね!


Comments

comments powered by Disqus