novius osの紹介 at cms fun
TRANSCRIPT
![Page 2: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/2.jpg)
開発の経緯
● コーポレイトサイト http://bioaster.org/ ○ 制作の現場から生まれたプロジェクト○ 多言語対応が必要だが Drupal だと大げさ、という規模
● 本体+標準アプリケーションで要件を満たす○ プラグイン/モジュール/アドオンなどを前提としない○ 長期的に安定して運用しやすい
2
![Page 3: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/3.jpg)
開発主体・ライセンス
● フランスの会社 Novius Agency が中心○ github.com で公開し、世界からコミットを受け付ける
● オープンソース○ 互恵性の強いライセンス (AGPL ver.3 or later)○ コアへの貢献を歓迎する (コードを分散させない)
3
![Page 4: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/4.jpg)
動作要件
● 自分のサーバーにインストールする場合○ PHP5.3以降
○ MySQL 5以降
○ サーバーに非公開領域ありを推奨
● 開発元提供のクラウドサービスがある○ 申し込み画面がフランス語、決済がユーロ
4
![Page 5: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/5.jpg)
コンテンツを管理する
5
![Page 6: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/6.jpg)
コンテンツ毎に、管理画面を作成
● コンテンツに応じた項目、入力方法を提供○ データの構造をきちんと作る○ 入力ミス防止、役割分担
● 柔軟な出力方法、再利用性○ 出力方法は別途設定する○ JSONやXMLで出力可能○ 外部システムと連携しやすい
6
![Page 7: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/7.jpg)
デモ用に作ったサイト
飲食店を想定
- 飲食メニュー一覧
- ブログ (新メニューを紹介することもある) - 問い合わせ
7
![Page 8: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/8.jpg)
コンテンツ毎に、管理画面を作成
商品メニュー8
![Page 9: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/9.jpg)
コンテンツ毎に、管理画面を作成
問い合わせフォーム9
![Page 10: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/10.jpg)
コンテンツ毎に、管理画面を作成
メディア
10
![Page 11: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/11.jpg)
コンテンツ管理に重点を置く
ウェブページ
コンテンツと見た目を分離しておくことで、コンテンツの管理がしやすい
11
![Page 12: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/12.jpg)
HTMLで出力
メニュー一覧: 全て表示 ブログ記事: 新メニューのみ
カレーの画像はwikipedia から。 cc-by-sa http://ja.
wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%
AB:Curry_and_rice.jpg
12
![Page 13: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/13.jpg)
ウェブサイトを作った後、更新作業がある
13
![Page 14: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/14.jpg)
HTMLで出力
メニュー一覧: 全て表示 ブログ記事: 新メニューのみ
カレーの画像はwikipedia から。 cc-by-sa http://ja.
wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%
AB:Curry_and_rice.jpg
14
![Page 15: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/15.jpg)
HTMLで出力
メニュー一覧: 全て表示 ブログ記事: 新メニューのみ
カレーの画像はwikipedia から。 cc-by-sa http://ja.
wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%
AB:Curry_and_rice.jpg
「価格の改定」「販売中止や終了」など運用途中で変更する場合
↓一箇所変えれば全部に反映
作業の工数減少、変更漏れを防ぐ
15
![Page 16: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/16.jpg)
HTMLに出力するだけ?
16
![Page 17: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/17.jpg)
様々なコンテンツの操作方法の例
● JSON で出力する
● XML で出力する
● コマンドラインで投稿、データ取得
● 外部サービス (チャットワーク) にデータを送る
17
![Page 18: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/18.jpg)
JSON, XML の出力
社内のシステム
JSONやXML等で出力することで、コンテンツを様々な場所で活用できる
ウェブページ
外部サービス
18
![Page 19: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/19.jpg)
JSON で出力
19
![Page 20: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/20.jpg)
XML で出力
20
![Page 21: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/21.jpg)
コマンドラインでの操作
社内のシステム
社内のシステムが既にある場合に活用するCMSの不具合は影響が大きいので、処理を少なくする
ウェブページ
外部サービス
21
![Page 22: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/22.jpg)
コマンドラインでの操作
コンテンツを作成して保存22
![Page 23: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/23.jpg)
コマンドラインでの操作
データを取得して、JSON や XML で出力
23
![Page 24: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/24.jpg)
外部サービス連携の例
社内のシステム
チャットワークと連携する例を紹介
ウェブページ
外部サービス
24
![Page 25: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/25.jpg)
外部サービス連携: チャットワーク
25
![Page 26: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/26.jpg)
外部サービス連携: チャットワーク
ログインアラート
問い合わせ受信通知
データを送信
26
![Page 27: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/27.jpg)
見たまま編集できる
CMS が便利では?
27
![Page 28: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/28.jpg)
「見たまま編集」ではない
「ウェブページの更新」だけを考えると手間
↓再利用しやすい形でコンテンツを作成し、
様々な媒体を一括更新すれば、
全体の手間は軽減され、作業ミスも防げる
28
![Page 29: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/29.jpg)
これらの機能は、
Novius OSだけでなく、
他のCMSでも可能では?
29
![Page 30: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/30.jpg)
FuelPHPフレームワークを採用
● JSON/XML 出力○ FuelPHP の Rest コントローラ機能
● コマンドライン操作○ FuelPHP の oil 機能 + OR マッパー
● チャットワーク連携○ FuelPHP のパッケージを利用
30
![Page 31: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/31.jpg)
フレームワーク採用のメリット
● 開発の効率性○ 車輪の再発明をしない(よくある機能はFuelPHPで実装)○ FuelPHPの環境設定、デバッグ機能などを活用
● 学習・運用コスト○ FuelPHPの他のプログラムとパッケージ共有
○ 別のシステムと連携
○ FuelPHPの書籍で学習できる
31
![Page 32: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/32.jpg)
FuelPHPを学ぶ書籍
● 改訂 FuelPHP入門 (早川聖司)● 初めてのフレームワークとしてのFuelPHP 改訂
版 (鈴木憲治)● Learning FuelPHP for Effective PHP
Development (Ross Tweedie)
32
![Page 33: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/33.jpg)
Novius OS が苦手なものは?
33
![Page 34: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/34.jpg)
Novius OS が苦手なもの
ウェブページを単位とする検索
コンテンツのまとまりごとに、別テーブルで管理
↓ 「メニュー」の中から検索は簡単だが、
「ページ上の表示内容」の検索は面倒
34
![Page 35: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/35.jpg)
ページ
ブログ
商品メニュー
35
![Page 36: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/36.jpg)
ページ
ブログ
商品メニュー
全体を検索しようとすると、「ページ」「ブログ」「商品メニュー」のデータを検索しなければならない
36
![Page 37: Novius OSの紹介 at CMS fun](https://reader030.vdocuments.net/reader030/viewer/2022020208/55ab1fde1a28abf1058b465e/html5/thumbnails/37.jpg)
まとめ Novius OS
● コーポレイトサイト向け○ 実案件からスタートした、実用的なシステム
● コンテンツの再利用性○ コンテンツごとの情報設計○ JSON, XMLなどの汎用的なフォーマット
● 標準的な機能を利用する○ CMS本体の充実、コードの共有○ ベースとなるフレームワークFuelPHPの機能を活用
37