Comments
Description
Transcript
について
後付け型のCMS(コンテンツ管理システム) 「MicroEngine(マイクロエンジン)」 について マイクロエンジン株式会社 川口 仁大 2011年 10月 14日 ネスト赤羽 IT勉強会 自己紹介 川口 仁大(Yoshihiro Kawaguchi) Twitter ID : @kawagooch - 2001 レース活動(レーシングカートなど) 2002 - 2003 ISPでテクニカルサポート業務・Linuxサーバーのメンテナンス 2004 - 2006 ポータルサイト・コミュニティサイト・CMSの受託開発 2007 - 2010 ソフトウェアベンダーでグループウェア製品の開発 2011 - マイクロエンジン株式会社を設立 後付け型CMS MicroEngine(マイクロエンジン)を開発 趣味 •レーシングカート 先月久し振りに足立区のシティカート で走行しました。 •自転車 ロードバイクで週一位走っています。 ※ブレーキは前後とも付いてますよ! •ゴルフ もう2年くらいプレーしていないような。。。 本日の流れ 1. CMS基礎編 2. MicroEngine(マイクロエンジン)の 紹介&デモ 3. CMSをテーマにフリートーク 1. CMS基礎編 1.1.CMSとは CMSとは?(1/2) CMSと略されるものはたくさんあります。 Color Management System (カラーマネージメントシステム) Cash Management System (キャッシュマネージメントシステム) Enterprise Content Management Systems (エンタープライズコンテンツ管理) 組織内の処理業務に関するコンテンツや文書を管理するシステム。ECMと略す場合も ある。 ざっくり言うと、社内ドキュメント(WordやExcelなど)を管理するもの。 CMSとは?(2/2) Content Management System (コンテンツ管理システム) Webサイトのテキストや画像などのコンテンツを管理・更 新するシステム。 Web向けということを明示するために、「Web CMS」 と言うこともあります。 今回取り上げるのは、Web CMS です。 コンテンツを重要な資産と考え、膨大なコンテンツの管理 に重点を置いたシステムや、HTMLの更新のみを行うシス テムもあります。 ブログってCMSなの? ブログもCMSの1種です。 日記機能に特化したCMSと言えます。 数年前のブログの流行からそのブログツールが普及し、発 展して、元々はブログツールだったものが様々な機能を備 えるようWebのプラットフォームになってきているものも あります。 CMS導入のメリット HTMLの知識がなくてもWebサイトを更新できる。 業者に依頼する手間・費用を節約できる。 ユーザー自身で即座に更新できる。 デザイン作成とコンテンツ登録の分業(分離)ができる。 コメントなどのコミュニティ機能や検索機能などの付加機 能を追加しやすい。 ※大規模サイトでは、ページ数が膨大になるため手作業での管理は難しく、CMSが必須 と言える場合もあります。 CMSが持つ機能例(1/2) 時限公開機能 公開予定日・終了日を設定できる。 コンテンツの権限管理 ディレクトリ単位などで、コンテンツを編集できるユーザーを制限できる。 公開承認ワークフロー機能 コンテンツの編集者とは別に、コンテンツの公開を承認するユーザーを定め、そのフ ローを定義できる。 更新履歴管理 いつ、誰によって、どのコンテンツが更新されたかの履歴を持つ。 場合によっては過去の特的期日の状態にコンテンツを巻き戻すことができる。 会員管理機能 コミュニティ系やECサイトでは、会員の入会や退会などの機能を持つ。 CMSが持つ機能例(2/2) SEO機能(検索エンジン最適化) TITLEタグ、METAタグの編集機能など LPO機能(ランディングページ最適化) 検索エンジンなどからサイトを訪問した場合に、検索キーワードを元に最適なコン テンツを表示するなどの機能。 マルチデバイス向け出力機能 PCサイト用・スマートフォン用・フィーチャーフォン用に最適化した内容を出力す る。 ※これ以外にも、メルマガ発行機能や、ナビゲーションリンクの自動生成、RSS配信機 能、アクセス解析機能など様々な機能がある。 これら全ての機能を持っているCMSは少ない。高機能なものは高価であったり構築や 更新が難しくなりがちな場合もある。 コンテンツ更新の流れ 手作業での更新例(CMS未導入) ローカルのPC上で、Dreamweaver、ホームページビルダーなどのオーサリング ツールを用いて、ページを作成する。 FTPソフトを使って、Webサーバーにアップロードすることでコンテンツが更新さ れる。 CMSでの更新例 CMSの管理画面に、ブラウザでアクセスする。 管理画面上でコンテンツを編集して公開設定にすることで、コンテンツが更新され る。コンテンツ編集者にとっては、FTPソフトの操作方法や、ローカルPC、Web サーバーといったネットワーク上の仕組みの理解が不要な点もメリットと言える。 ※コンテンツ編集用サーバーと公開用サーバーが分かれていて、FTPで自動的に同期 (更新)するようなタイプのCMSもあります。 1.2.導入率・シェア CMSの導入率(2006年) CMS導入企業は 9.3% 導入予定は 13.4% ※出典:株式会社インプレスR&D発行『インターネット白書2006』 CMS導入企業 導入予定 2006 0 10 20 30 40 50 60 70 80 90 100 CMSの導入率(2010年) CMS導入企業は 12.2% 導入予定は 13.6% ※出典:株式会社インプレスジャパン発行『インターネット白書2010』 CMS導入企業 導入予定 2010 0 10 20 30 40 50 60 70 80 90 100 CMSのシェア 世界的には、WordPressが圧倒的なシェアを獲得してい る。 参考情報: http://w3techs.com/technologies/overview/content_management/all 参考情報: http://wappalyzer.com/stats/cat/CMS 国内ではMovable Type, WordPressの人気が高い。 インターネット白書2008によると、トップは独自開発で 22.1%、2位が21.7%でMovableType。 CMSの種類 CMSの種類は本当に多くあります。 wikipediaに載っている汎用CMSだけで、100種類ありま す。 http://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%B3%E3%83%86%E3%83%B3%E3%83%84%E3%83%9E %E3%83%8D%E3%83%BC %E3%82%B8%E3%83%A1%E3%83%B3%E3%83%88%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0 opensourceCMS というサイトでは、PHP製のオープン ソースCMSだけで、252種類あります。 http://php.opensourcecms.com/ 1.3. 分類・環境について CMSの分類 汎用CMS Joomla(ジュームラ) Drupal(ドルーパル) MODx(モッドエックス) MicroEngine(マイクロエンジン) ブログツール Movable Type(ムーバブルタイプ) WordPress(ワードプレス) ECサイト EC-CUBE(イーシーキューブ) Magento(マジェント) Wiki MediaWiki(メディアウィキ) ※個人的な印象で分類してピックアップしています。 サイト種類で分類 ブログサイト向き Movable Type(ムーバブルタイプ) WordPress(ワードプレス) ポータルサイト・コミュニティサイト向き XOOPS(ズープス) WordPress(ワードプレス) 教育機関向き NetCommons(ネットコモンズ) 自治体向き Pref Shimane CMS(島根県CMS) Joruri(ジョールリは、徳島県と株式会社アイ・ディ・エスが共同開発) 規模で分類 エンタープライズ向けCMS ライセンス費用が最低数百万円から。多機能で、機能比較表ではほとんどに丸印が つく。数千ページにも対応。 構築に半年掛かる場合も。典型導入パターン例で、4,000万円∼というものも。 小・中規模向けCMS ライセンス価格が、数万円から数十万円。オープンソースのCMSが採用される場合 も多い。構築は、1,2ヶ月程度。 軽量CMS データベースサーバーを必要とせず、手軽に動かせるもの。 WikiPediaによると、 「既存のCMSがバージョンアップとともに肥大化、複雑化していくことに対する一 方で、「手軽さ」への潜在的なニーズがあることを示すといえる。」 http://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%B3%E3%83%86%E3%83%B3%E3%83%84%E3%83%9E%E3%83%8D%E3%83%BC %E3%82%B8%E3%83%A1%E3%83%B3%E3%83%88%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0 プログラミング言語 CMSで使われているプログラミング言語の例 PHP 多くのCMSで採用されていて、多くの共有型レンタルサーバーでもサポートされて いる言語。 但し、CMSが対応しているバージョンとレンタルサーバー上のPHPのバージョンの 違いに注意が必要。 Perl Movable TypeはPerlで書かれています。 Ruby Joruri や 島根県CMS はRubyで書かれています。 Ruby on Rails という有名なWebアプリケーションフレームワークがあります。 Java エンタープライズ向けCMSで採用例が多い。 データベース等 登録内容の保存先について MySQL 多くのCMSで使用されているデータベース管理システム。 レンタルサーバーでも用意されている場合が多いが、使用できるデータベースの数 に注意。 PostgreSQL MySQLに加え、PostgreSQLにも対応させているCMSもある。 SQLite PHP5では標準でサポートしている。SQLiteはサーバーではなく組み込み型の軽 量データベースライブラリ。データは単一のファイルに保存されることが特徴。 その他 XMLを使う場合や、独自フォーマットでテキストの保存する場合、コンテンツを 直接書き換えて、データは別途保存しないというパターンもある。 ライセンスについて 商用ライセンス 有償製品の場合は、商用ライセンスが用意されます。 オープンソースライセンス GPL, MIT, BSDライセンスなどいくつかの種類があります。 デュアルライセンス オープンソースライセンスと商用ライセンスを選択できる場合もあります。 商用版・オープンソースライセンス版を用意 機能差を設けた別製品として、商用版・オープンソース版を用意するケースも ある。Movable Type は商用製品だが、MTOSというオープンソースライセン ス版も用意されている。 CMSを動かす環境 共有型レンタルサーバ 安価だが、環境の制約が多い。PHPのバージョンや、MySQLのバージョン、使用でき るデータベースの数などの確認が必要。動的配信(後述します)タイプのCMSの場合 は特に十分なパフォーマンスを期待できるサーバーを選択する。 専用サーバー レンタルサーバーでも、自社サーバーにしても自由度は高い。 但し、既存の自社サーバーにCMSを追加する場合などは、既存システムとの共存を考 慮しないといけないケースも多い。 ステージングサーバー 本番環境と同様の環境でテストを行うためにサーバーを用意する場合がある。 制作者のローカル環境 試用などの目的のために、制作者自身のPC(WindowsやMac)内にWebサーバーを用意 してCMSを動かす場合もあります。 1.4.機能説明 コンテンツの配信方式 コンテンツの配信方式としては、「動的配信」タイプと 「静的配信」タイプに分けられる。 どちらかの配信方式を標準とするが、もう一方の方式もオ プションとして対応できるCMSもある。 動的配信 動的配信方式の仕組み 動的配信方式では、サーバーにリクエストがある度に、プログラムが実行される。 データベースからデータを取得して、テンプレートを元にHTMLを生成して配信する。 アクセス元や状況により表示内容を変える場合など、よりダイナミックな動きのあるサイトに向いている。 サーバーでプログラムが実行されるため、応答時間が増えることがデメリットとして挙げられる。 キャッシュ機能 応答時間の対策として、キャッシュ機能を備えているCMSもある。キャッシュ機能を有効にすると、生成済みの HTMLを即座に配信できるためパフォーマンスが向上する。常に、表示内容が変わるページなどではキャッシュの 活用が難しい場合もある。 URLについて 動的配信方式ではプログラムを実行するために、アクセスするURLが静的サイトとは異なるものになる。 例: http://example.com/index.php?p=1 mod_rewrite というWebサーバーの機能を利用して通常のHTMLのように見せかけることも良く行われる。 動的配信タイプのCMS WordPressをはじめ、多くのCMSで動的配信方式が採用されている。 静的配信 静的配信方式の仕組み 静的配信方式では、リクエスト時にプログラムは実行しない。コンテンツ編集時にあらかじめHTMLを生成してファイ ルとして書きだして置く仕組み。 公開サイトへのアクセスは、CMSを導入していない静的サイトと全く同じで単純にHTMLを返すのみとなる。 そのため、静的サイトと比較してもCMS導入によるオーバーヘッドが発生しない。 再構築処理 CMSの種類によっては、再構築という処理を行い関連するHTMLファイルを全て書き出す処理を行うタイプのCMSも ある。その再構築処理に時間が掛かり過ぎることが問題になるケースもよく聞かれる。 しかし、静的配信タイプのCMSでも、再構築処理が不要なタイプも存在する。 安全・安心のメリット 公開サイトは単純にHTMLを返すだけなので、サーバー環境の変化によるトラブルの心配は少ない。 書き出されたHTMLを別のサーバーに移動して利用することもできるため、サーバートラブル時に急遽別サーバーで動 作させたり、負荷分散のために複数のWebサーバーを利用するケースもファイルのコピーだけで済むなど扱いやすいと いうメリットもある。 静的配信タイプのCMS Movable TypeやMicroEngineがある。エンタープライズ向けのCMSでは静的配信タイプが多い印象。 時間に余裕がある場合のメモ1 コンテンツの管理画面 コンテンツへの到達フロー リスト(更新の新しい順) フォルダーツリー 検索 公開サイト側から選択 コンテンツの編集方式 WYSIWYGエディター ソースコード編集 ブロック単位の編集 カスタムフィールド 時間に余裕がある場合のメモ2 構築・運用 構築パターン例 バックアップ DBを使うCMSが多いので、DBのバックアップが必要。 ツールを用意している場合もある。 環境の移行の話 既存サイトへのCMSの組み込み サポート オープンソースは主にコミュニティ。+有償サポートをしているCMSも有り。 商用製品は、サポートがライセンスに含まれていたり、別途サポートサービスを用意 している場合が多い。 CMS導入後の問題点・課題 テンプレートの再編集。 CMSを導入したが、クライアントさんが更新できない。 編集するとデザインがくずれる。wysiwygエディターの課題 1.5.CMSの今後 次世代CMSの話 興味深い話がありましたので、ご紹介します。 CSS Nite in Ginza, Vol.50 ( 2010年7月22日) 『次世代のCMSに求めるもの』中川 直樹さん(アン ティー・ファクトリー) http://cssnite.jp/archives/post_1887.html 2. MicroEngine (マイクロエンジン)の紹介&デモ MicroEngineとは? MicroEngine(マイクロエンジン)は、マイクロエンジン 株式会社が開発・販売している有償のCMS製品です。 後付け型という特徴を持っているため、すでに運用してい るWebサイトにも少ない工数で導入できます。 シンプルで直感的な操作性を持つことも大きな特徴の1つ です。 2.1. CMSの導入プロセス CMSの導入タイミング 新規サイト: - サイト新規開設時にCMSを導入 既存サイト: - 既存サイトのデザインはそのままにCMSを導入 - CMS導入タイミングでサイト全体をリニューアル 新規サイトに導入 データの登録作業は比較的楽。 静的なWebサイトと比べると、CMS構築に掛かる日数分リ リースが延びる。 リリース後に変更したい場合、想定を超えたデザイン変更 等はかえってコストが増える。 既存サイトに導入 データの移行作業が大変。 URLが変わってしまうケースもある。 動的配信タイプのCMSの場合は負荷が心配。 デザインを崩さずに更新できるかどうか。 CMSの導入範囲 - サイトの全体に導入 全てのページを更新できる必要はありますか? - サイトの部分的に導入 部分的に導入しやすいCMSですか? 最初からCMSは必要? サイトは素早くリリースしたい。 リリース後にアクセス解析をして、必要に応じて自由に改 修をしてより良いサイトに育てたい。 そう考えると、最初からCMSありきで、全体的に導入して しまうのは良くないかも。 導入プロセスの一案 新規サイトでは静的なWebサイトとして素早くリリースす る。 CMSを導入するとしても、新着情報の更新などの部分的な 導入にとどめる。 リリース後は、これまで通り静的なWebサイトとしてプロ のWeb制作者が更新する。 更新パターンが確立できた部分から徐々にCMSを導入す る。 ほとんどのCMSでは ほとんどのCMSの場合、CMSが主役です。 CMSの仕組みに合わせて、HTMLを分割してモジュール化 したり、決められた位置に、決められたファイル名でテン プレートを配置したりと、構造上の制約が多くみられま す。 静的なページをそのまま取り込めますというタイプでも、 決められた位置に静的なページを移動する必要がありま す。 動的配信タイプのCMSだと 既存のサイトをCMS化した場合、URLが変わってしまう。 URLを元の静的なURLに見せかけるには mod_rewrite が 必要。 動的配信だと負荷が心配。 MicroEngineの場合 MicroEngineはWebサイトが主役。 CMSを導入してもURLは変わりません。 ページを更新したら、元の位置にHTMLファイルを書き出 す仕組みです。 mod_rewrite 不要。 安全・安心の静的配信です。それでいて再構築は不要! 負荷を心配する必要も、URLが変わる心配もありません。 MicroEngine導入例 静的サイト (通常のWebサイト) MicroEngine導入後 ↑ここに追加。 既存のファイルは そのまま テンプレート数は無制限 従来どおり手作業で管理 テンプレート作成 テンプレート作成 テンプレート作成 テンプレート作成 これらを1つのテンプレート で管理 ページを更新すると index.htmlを更新した場合 内容を更新して、元のファイル を上書き 事例 MicroEngineの公式サイトは、デザイン・HTML/CSSコー ディングは他社に依頼しました。 静的なサイトができあがったら、それをサーバーにアップ ロードして、そこにMicroEngineをインストール。 新着情報と、Q&AだけをCMS化して、2時間ほど作業した らそれでサイト公開という流れでした。 2.2.CMS導入後の更新作業 CMS導入後の課題 クライアントさんが更新できない - 編集したいページに辿りつけない - 編集画面と公開サイトの見た目の違い CMSで更新するとデザインが崩れる - 自由度の高いWYSIWYGエディターは諸刃の剣 ※ WYSIWYG(ウィジウィグ)エディターとは見たまま編集できるエディターの事で、ワープロ感覚で編集でき ると表現することが多い。 編集したいページに辿りつくには 公開サイトと同じUIでペー ジを選択。 公開サイト 管理画面 クリックで表示している ページの編集画面に遷移。 公開サイトに近い編集画面 公開サイト ページ編集画面 更新するとデザインが崩れる WYSIWYGエディターのイメージ: 編集可能領域を細かく設定 編集できるところを制限してデザインの崩れを防止 この例では、赤い枠線内の文字と画像のみを更新するた め、HTMLの構成は崩れない。 編集したい部分をクリック ページ編集画面 表示された編集ボックスに文字を入力 MicroEngineは直感的 MicroEngineの管理画面は、ページ選択もページ編集も直 感的。 デモを御覧ください。 2.3.デモ 2.4. MicroEngine情報 MicroEngine公式サイト http://microengine.jp 動作環境 Webサーバー:Apache プログラミング言語: PHP5 データベース: SQLite 低価格の共有型レンタルサーバーでも動作します。 XAMPPやMAMPをインストールすれば、お手元の WindowsやMacでも動作します。 製品ライセンス 価格 :73,500円(税込) サポート:1年間のメールサポート 試用期間: 30日間 無償で使用できる「個人ライセンス」も用意 しています。 2.5. 最後に CMSの導入率はまだ低く、ほとんどが静的 サイトという状況です。 MicroEngineは後付け型という特徴があ り、ピンポイントに既存のHTMLの一部を書 き換えることが得意なCMSです。 MicroEngine を利用して、静的なWebサイ トを活性化してください! 3. CMSをテーマに フリートーク ご参加ありがとうございました。