concrete5 バージョン5.7のご紹介
DESCRIPTION
OSC京都2014のセミナーで発表した concrete5 の新バージョン 5.7 ベータ版の紹介です。TRANSCRIPT
concrete5バージョン5.7のご紹介
concrete5関西ユーザーグループ 菱川拓郎
バージョン5.7とは• 2013年1月にロードマップが示された、現行の5.6系の次のメジャーバージョンアップとなるリリース
• 編集モードのUIの刷新、レスポンシブデザインのサポートの改善、SNSとの連携強化など、これまでのメジャーバージョンアップの規模を大幅に上回る機能追加を予定
• モダンPHPに対応
• エコシステムの進化
• まだベータ版!(2014/8/2時点)
新機能
ユーザーインターフェースの再設計
• concrete5は2003年から開発が始まっている歴史のあるCMS
• 昨今ではブラウザからドラッグ&ドロップでサイトを構築できるWebサイトビルダーが普及。concrete5の直感的な操作も、ちょっと古くなった
• モバイル、HTML5など最新のトレンドを踏まえたさらに直感的なUIへ
• 「管理画面」の存在をより意識させないように
コンポーザー機能の改善• コンテンツの種類(お知らせ?製品情報?求人情報?など。
concrete5ではページタイプと呼称)によって、ページ作成フォームを自由に設計できる機能
• プログラミング不要。ブラウザからの設定のみでさくさく作成
• 5.6系までの分かりにくさを改善。より日々の運用が楽になる
シングルサインオン
• 「Facebookでログイン」が標準機能に
• 拡張可能な設計
Conversations(訳語に悩み中)
• コメント機能の大幅な改善
• 5.6系までのシンプルなコメント欄から、Reddit風?のリッチなコメント欄に
• スパム報告や評価など実用的な機能
画像エディター• 画像の回転、切り抜き、拡大・縮小
• フィルター
ユーザー管理の改善• ユーザーをグループで管理する既存機能を改善
• グループの階層構造に対応、複雑な権限設定の負担を軽減
• 会員登録時に特定のグループに属させたり、バッチ処理でグループの移動をしたり
• 会員制サイトの運用が楽になる?
Gathering(訳語悩み中)
• サイト内のフィードやソーシャルネットワークのタイムラインをあつめてオシャレに表示する機能?
• 訪問者が情報を投稿できる?
• ベータ版ではまだ動かないし用途もよく分からない(汗
モダンPHPに対応
PHP5.2がサポート外に、PSR-2の採用
• 名前空間が必要になります
• これまでのconcrete5独自のコーディングスタンダードが改められ、PSR-2 コーディングスタンダードが採用されます
• PSR-2とは、PHPの各種フレームワークやComposer, phpDocumentor, phpBBなど有名なプロダクトの開発者が集まって標準化をめざすグループ「FIG(PHP Framework Interop Group)」が策定した標準規約
ファイルの命名規約もPHP標準へ、PSR-4の採用
• Pageクラスの名前空間が \Concrete\Core\Page\Page の場合
• ファイルの位置は concrete/core/Page/Page.php
• システム全体の把握がしやすくなります
その他のコーディングスタイルの変更
• Airbnb Javascript コーディングスタイルガイドを採用
• LESSの全面的な採用(ビルトインコンパイラ)、CSSの規約も整理
• Composerの採用
• gruntからgulpへの変更?(議論中)
Symfony2コンポーネントの採用
• Symfonyは世界的に採用されているPHPフレームワーク
• 信頼性が高いコンポーネントの集合
• Drupal, phpBB, Laravel, eZ Publish, Piwikなどのプロジェクトが採用している
モダンPHP
• PHPフレームワークの開発経験がある人にさらに分かりやすくなります
• 信頼性の高いフレームワークコンポーネントの採用で、安定性の向上が期待できます
• 古いPHPを書かされてイラッとしなくてよくなります
• フレームワークの開発ができて、ユーザーに使いやすい、分かりやすい編集UIが欲しいと思っている方、始めるならいま!
開発、翻訳協力のお願い
現在5.7はベータ1
• バグ盛りだくさん
• 動いてない画面
• ふわっとした挙動
• 割とα版くらいの状態だが、より広く多くの方に試してもらいたい
GitHubで開発• https://github.com/concrete5/
concrete5-5.7.0
• 開発をリアルタイムで追いかけられます
• バグ報告、新機能の提案もissueで行なわれています
• 新参でも問題なし!コミッターなど決まってないGitHub時代のOSS。プルリクエストを送って参加しよう
翻訳も進行中• 翻訳はWebサービス「Transifex」上で
• https://www.transifex.com/projects/p/concrete5/translate/#ja_JP
• 英語が得意じゃなくても問題なし!
• 新機能の訳語の議論に参加するだけでも
• 放っとくと誰もいい訳語が思いつかなくてカタカナになっていきます(汗
参加するなら今が面白い!ぜひご参加ください
Q&A
• ユーザーもComposerが必要になりますか?→ 開発者がGitHubからビルドする時のみで、配布時はZipにパッケージングされます。
• 日本語ならではの問題は解決されますか?→ 5.6系までリリースされている日本語版が不要になるように、5.7で完全に日本語が使えるようにする議論を進めていきたい(参加してください!)
• 5.6から5.7へのバージョンアップはできますか?→ 直接バージョンアップはできない予定。データ移行手段が用意される予定です。