アルファサード株式会社 代表取締役 野田 純生のブログ


Movable Type4で商用CMS並みの多機能CMSを作っちゃえ!


公開日 : 2007-08-19 15:08:18


Movable Type4をベースにしてウェブサイト制作・運用のための高機能CMSを開発しよう

Movable Typeを利用したサイト制作やウェブアプリ開発なんかをこの1年くらいでかなりやってきたのですが、これまでは社内でサイト制作のための色々な独自のプラグインとかCMSテンプレートとかを作って使っていました。MT4がリリースされたこと、当社内に色々なノウハウが蓄積されて来たこと、当面受注済みの案件でMTを使う方針になっているものが少なからずあることから、『MT4をターゲットにした「高機能CMS」を作ろう』プロジェクトが社内で進行中です。

完成したあかつきには、当社内で制作する各案件で使う他、公開しちゃっていいじゃない! 的なものは一部公開するかもしれませんし、ニーズがあればパッケージで販売するかもしれません。MTOSが出た際には、MTOSベースの何かとしてリリースするかもしれません。

で、どうせ作るのだったらいっそ「そのプロセスを公開して、こんなものが欲しいとかそんな意見があれば吸い上げてみたら面白いんじゃね? 僕たちのような制作現場の制作者のニーズを集めてこそ良いものが作れるんやし」という考えで、今社内MLでやりとりしている内容をオープンにしちゃいます。

このやり取りの中で出てくる「PowerCMS」というのが当社の社内で使っていたMT3.3用の(非公開の)プラグインセットです。フィールドの拡張やエントリーの並び順制御、エントリーの複製とかエントリーのひな形を作れたり承認フローが組み込まれています。

以下のエントリーでキャプチャとか一部見られます。

ちなみに、携帯(モブログ)完全対応とか高速全文検索なんかは基本既に出来ているので話題に上がっていません。

まずは僕から社内MLに投げた一通のメール

>各位

野田です。お疲れさまです。

MTベースで作成するCMS系案件が今後増えて来ます。というか、意図的にそういう営業というか情報発信を行っているせいですけど。

すべてをゴリゴリ開発するのはいかにも効率が悪いよな。
そこで、以前から話していたように、「マークアップエンジニア=MVCのV担当」相当のスキルと知識があればCMSが顧客向けにカスタマイズできるプラグインセット(以前作成していたPowerCMSプラグインのMT4向けさらに強化されたもの)を作りたいと思います。

そこで、

  • まずはどんな機能が制作者として欲しいのか
  • どんな機能があればクライアントは喜ぶのか
  • どんなものだったら他の製品と比較して優位性があるのか
  • どんなものだったら当社の優勢性が活きるのか

についてまずはアイデアフラッシュをメールベースでやりとりしたいと思います。

PowerCMSにあった機能としては、

  • フィールドの分割
  • エントリーのテンプレート化機能
  • 承認フロー
  • エントリーやカテゴリーのソート機能(Drag&Dropは欲しいところ)
  • アップロードしたファイルの管理(エントリーとの関連付け、公開・非公開の設定)
  • エントリーのプレビュー機能

今後欲しいもの

  • 「付箋」機能(修正指示とかを付けられる)
  • 簡易スケジューラー(以前**の案件で作った施設予約・管理みたいなインターフェイスで各スタッフのスケジュール共有ができるもの)
  • 完璧なファイル管理(アップロードしたファイルだけでなく、再構築で吐き出されたファイルも管理できる)
  • (機能ではないが)高速化のためのソリューション
  • 認証付きページが簡単に作れるインターフェイス
  • 複数ブログの連携(同時再構築)機能
  • エントリー以外のプレビュー(インデックスアーカイブとか日付/カテゴリーアーカイブもプレビューできる)
  • 年度別アーカイブ
  • 各ブログへの掲示板やメーリングリスト機能
  • 簡単なファイルアップロード
  • より賢いWYSIWYG

できればファイルアップロードや並べ替えはAjaxだけじゃなくてFlexとかを使ってFlashによってすごく使いやすいものにしたらどうかなぁ。

まずは各人が欲しいものをMLベースでやりとりしましょう。


以下、各スタッフが思い思いに好きなことを


地味な機能ですが

<MTIfPageDirectory directory="foo"></MTIfPageDirectory>
<MTIfPageParentDirectory directory="bar"></MTIfPageDirectory>

のようなタグが欲しいです。
エントリーではなくページを作成するときにカテゴリーが存在しないため、
テンプレートの分岐はタグを使用することになります。
タグはエントリーとも紐付いてしまうので、
できれば特定のディレクトリで分岐できるテンプレートタグがあると便利かと思
います。
また、「親ディレクトリが○○の場合」の分岐もあると便利かと思います。
(Alfasadoのサイトはタグで分岐しています。)


ひとまず一つ希望です。

・簡単なファイルアップロード
に含まれているかもしれませんが、
画像などのファイルアップロードを複数同時にできるとすごく便利だと思います。
それも、一つ一つ「参照」で選ぶのではなくて
がばっと選択してドラッグドロップできるのがいいと思います。
(FTPと同じくらいの使い勝手)


例えば**様の案件などでは「イントラでの知識の蓄積と共有」がテーマとして大きな比重を占めていることもあり、掲示板という路線で行くわけですが、これに関連し、ユーザ個々人が参考になった掲示板の発言をワンクリックでどこかにとっておく機能があれば、少なくともこのテーマ上では役に立つような気がします。

googleの「メモをとる」に相当する機能です。
google上ではクリックミス以外でこの機能に関わったことはありませんが、いちいち掲示板を見に行って、過去に見た発言を探したり、エディタにコピペしてローカルに保存するよりは手間が省けると思います。
もちろん、個々人が判別され、とったメモを閲覧するマイページが存在することが前提となりますが…


PowerCMSでも、「エントリーテンプレート」ってありましたけど、エントリーのひな形を視覚的にサムネイル一覧から選択して新規投稿とかできると良いですよね。

他に、「付箋」や「並び替え順」**さん指摘の「ファイルアップロード」の件で欲しいのは「Drag&Drop」ですよね。

特にファイルのアップロードについては、現実的にブラウザのセキュリティ制限等から難しいところがあります。

そこで、

・アップロードはZipアーカイブ等で一時ディレクトリに一括アップする
・ブラウザ上でエクスプローラーっぽいインターフェイスでDrag&Dropで登録していく

というような発想でできないでしょうか。


ところで、やっぱ、アクセス解析は要るでしょうねぇ...


加えて、検索ログビューアがついていれば
ユーザの挙動の把握については完璧ですね。

**の案件で使っているHyperEstraierのように、**さんの**にログを吐き出させて、検索結果のアンカーにパラメータをつけてクリックログをとるような感じで。


ないとすごく不便とかそういったものではないですが、DreamweaverやFlashのActionscript欄のように、入力しているタグの属性を補完して
くれる機能が欲しいです。

エントリー内容のエディタで<a まで打ったら、<a [href=]のようにツールチップで出てきて、タブやエンターで選択してで補完できるものです。

タグ全部を打つのが、間違ったり面倒くさかったりするので、個人的にあったら便利かなあと思います。


さて、何か欲しいものありますか?

とまぁ、こんな感じでまずは好きなことを言いあっています。一応全員が何らかの役割を担うということで担当割り振りは済んでいます。

さて、もし何か「こんなものがあれば便利なのに!」ってなことがあれば、コメントなりトラックバックなりブクマなりで列挙してもらえればいいかなぁ。もちろんやるかどうかの判断はあくまでウチの都合なんですけど。

カテゴリ


このブログを書いている人
野田純生の写真
野田 純生 (のだ すみお)

大阪府出身。ウェブアクセシビリティエバンジェリスト。 アルファサード株式会社の創業者であり、現役のプログラマ。経営理念は「テクノロジーによって顧客とパートナーに寄り添い、ウェブを良くする」。 プロフィール詳細へ