MediaFront demoの設定

これまでの作業でMediaFrontに関連する寄贈モジュールが使用可能な状態になっています。

ここではそれらのモジュールを有効にして、デモの内容と同じになるようにサイトを設定するところまでを記載します。
※各モジュールに関して、デモ以降にセキュリティアップデートなどの理由でモジュールのバージョンが更新されています。モジュールの更新方法はD7では便利な方法が追加されていますのでそれについても記載します。
※MediaFeatureモジュール内のmedia_conectを有効にする際にエラーメッセージが表示される場合、Image AssetフィールドにURLを入力できない状態だと思われます。その状態では画像ファイルが読み込めないのでデモのようにはなりません。入力したURLの解析がうまくいっていないようです。
※2012.01.18追記 php.iniにallow_url_fopen = offを記述していたのが原因です。allow_url_fopen = onであれば問題ありません。さくらのレンタルサーバではデフォルトがonですのでわざわざ記述する必要はありません。

うまくいけばフロントページがこんな感じになります。

MediaFront demo
 

1.モジュールの有効化

インストールが完了した状態ではモジュール一覧のページは以下のようになっています。(画面はあえてdrushを使用しています)

$ drush core-cli
Entering the drush cli.  Use CONTROL-D to exit.
Type 'help' for help.
drush> pm-list
 Package               名前                                                      タイプ     状態             バージョン  
 Chaos tool suite      Bulk Export (bulk_export)                               Module  Not installed  7.x-1.0-rc1
 Chaos tool suite      Chaos tools (ctools)                                    Module  Not installed  7.x-1.0-rc1
 Chaos tool suite      Chaos Tools (CTools) AJAX Example (ctools_ajax_sample)  Module  Not installed  7.x-1.0-rc1
 Chaos tool suite      Chaos Tools (CTools) Plugin Example                     Module  Not installed  7.x-1.0-rc1
                       (ctools_plugin_example)
 Chaos tool suite      Custom content panes (ctools_custom_content)            Module  Not installed  7.x-1.0-rc1
 Chaos tool suite      Custom rulesets (ctools_access_ruleset)                 Module  Not installed  7.x-1.0-rc1
 Chaos tool suite      Page manager (page_manager)                             Module  Not installed  7.x-1.0-rc1
 Chaos tool suite      Stylizer (stylizer)                                     Module  Not installed  7.x-1.0-rc1
 Chaos tool suite      Views content panes (views_content)                     Module  Not installed  7.x-1.0-rc1
 Core                  Aggregator (aggregator)                                 Module  Not installed  7.8
 Core                  Block (block)                                           Module  Enabled        7.8
 Core                  Blog (blog)                                             Module  Not installed  7.8
 Core                  Book (book)                                             Module  Not installed  7.8
 Core                  Color (color)                                           Module  Enabled        7.8
 Core                  Comment (comment)                                       Module  Enabled        7.8
 Core                  Contact (contact)                                       Module  Not installed  7.8
 Core                  Content translation (translation)                       Module  Not installed  7.8
 Core                  Contextual links (contextual)                           Module  Enabled        7.8
 Core                  Dashboard (dashboard)                                   Module  Enabled        7.8
 Core                  Database logging (dblog)                                Module  Enabled        7.8
 Core                  Field (field)                                           Module  Enabled        7.8
 Core                  Field SQL storage (field_sql_storage)                   Module  Enabled        7.8
 Core                  Field UI (field_ui)                                     Module  Enabled        7.8
 Core                  File (file)                                             Module  Enabled        7.8
 Core                  Filter (filter)                                         Module  Enabled        7.8
 Core                  Forum (forum)                                           Module  Not installed  7.8
 Core                  Help (help)                                             Module  Enabled        7.8
 Core                  Image (image)                                           Module  Enabled        7.8
 Core                  List (list)                                             Module  Enabled        7.8
 Core                  Locale (locale)                                         Module  Enabled        7.8
 Core                  Menu (menu)                                             Module  Enabled        7.8
 Core                  Node (node)                                             Module  Enabled        7.8
 Core                  Number (number)                                         Module  Enabled        7.8
 Core                  OpenID (openid)                                         Module  Not installed  7.8
 Core                  Options (options)                                       Module  Enabled        7.8
 Core                  Overlay (overlay)                                       Module  Enabled        7.8
 Core                  Path (path)                                             Module  Enabled        7.8
 Core                  PHP filter (php)                                        Module  Not installed  7.8
 Core                  Poll (poll)                                             Module  Not installed  7.8
 Core                  RDF (rdf)                                               Module  Enabled        7.8
 Core                  Search (search)                                         Module  Enabled        7.8
 Core                  Shortcut (shortcut)                                     Module  Enabled        7.8
 Core                  Statistics (statistics)                                 Module  Not installed  7.8
 Core                  Syslog (syslog)                                         Module  Not installed  7.8
 Core                  System (system)                                         Module  Enabled        7.8
 Core                  Taxonomy (taxonomy)                                     Module  Enabled        7.8
 Core                  Testing (simpletest)                                    Module  Not installed  7.8
 Core                  Text (text)                                             Module  Enabled        7.8
 Core                  Toolbar (toolbar)                                       Module  Enabled        7.8
 Core                  Tracker (tracker)                                       Module  Not installed  7.8
 Core                  Trigger (trigger)                                       Module  Not installed  7.8
 Core                  Update manager (update)                                 Module  Enabled        7.8
 Core                  User (user)                                             Module  Enabled        7.8
 Features              Features (features)                                     Module  Not installed  7.x-1.0-beta4
 Features              media_content (media_content)                           Module  Not installed
 Features              media_feature (media_feature)                           Module  Not installed
 HTML5 Media           HTML5 Media (html5_media)                               Module  Not installed  7.x-1.x-dev
 Media                 File Entity (file_entity)                               Module  Not installed  7.x-1.0-beta5
 Media                 Media (media)                                           Module  Not installed  7.x-1.0-beta5
 Media                 Media Browser Plus (media_browser_plus)                 Module  Not installed  7.x-1.0-beta3
 Media                 Media Internet Sources (media_internet)                 Module  Not installed  7.x-1.0-beta5
 Media                 Media: Vimeo (media_vimeo)                              Module  Not installed  7.x-1.0-beta3
 Media                 Media: YouTube (media_youtube)                          Module  Not installed  7.x-1.0-alpha5
 MediaFront            MediaFront (mediafront)                                 Module  Not installed  7.x-1.3
 MediaFront : Players  Open Standards Media Player (osmplayer)                 Module  Not installed  7.x-1.3
 Other                 Strongarm (strongarm)                                   Module  Not installed  7.x-2.0-beta2
 Styles                File Styles (file_styles)                               Module  Not installed  7.x-1.0-alpha4
 Styles                Styles (styles)                                         Module  Not installed  7.x-1.0-alpha4
 Styles                Styles UI (styles_ui)                                   Module  Not installed  7.x-1.0-alpha4
 Views                 Views (views)                                           Module  Not installed  7.x-3.0-rc1
 Views                 Views UI (views_ui)                                     Module  Not installed  7.x-3.0-rc1
 Core                  Bartik (bartik)                                         Theme   Enabled        7.8
 Core                  Garland (garland)                                       Theme   Disabled       7.8
 Core                  Seven (seven)                                           Theme   Enabled        7.8
 Core                  Stark (stark)                                           Theme   Disabled       7.8

「Not installed」が無効(チェックをしていない)、「Enabled」が有効(チェックをしている状態です。
※drushでモジュールをenable(略:en)する場合は、名前欄の()内がmodule nameになります。

Coreを除き、ctools+media_content以外のすべてのモジュールを有効化しました。
※media_contentは最初の画像URLを読み込んだところでfunction:filesizeのエラーがincludes/file.incで発生するため導入できませんでした。
※media_featureを導入しないのであればfeatures、Styles、HTML5 Media、Media:Vimeoなども無くても構いません。
※Media 7.x-1.xにはFile Entityが付属しています。Media 7.x-2.xには別途必要です。
※Style 7.x-1.xは有効にする際にInternal Server Errorになり、アンインストールする際にもエラーが発生しますので、Style 7.x-2.xにしています。
※Style 7.x-2.xもアンインストール時にエラーが発生します。強引な方法ですがアンインストールは一応可能です。

 

2.モジュールの更新

D7ではモジュールの更新方法が従来の方法とさらに以下の方法とがあります。

(1)更新の確認

モジュール一覧の画面の右上にある「更新」をクリックします。
更新対象のモジュール

(2)モジュールの選択

更新するモジュールを選択し、「アップデートをダウンロード」のボタンをクリックします。
モジュール選択

(3)アップデート準備の完了

選択したモジュールの最新版をダウンロードし、アップデートの準備が整います。
次へ行く前に、万が一に備えてデータベースのバックアップを取得しておいてください。
「継続」ボタンをクリックします。
更新の準備完了

(4)アップデートの完了

モジュールの更新が完了しました。
次は、データベースの更新になりますが毎回アップデートされるとは限りません。
一応、「Run database updates」をクリックします。
モジュールの更新完了

(5)update.phpの実行

update.php実行画面に移ります。
「Continue」をクリックします。
データベースのアップデート

(6)データベースのアップデート開始

承認待ちのアップデートがある場合です。今回は3件です。
「Apply pending updates」をクリックしてアップデートを開始します。
データベースのアップデート開始

(7)更新の完了

データベースの更新が正常に完了すれば以下のような画面になります。
データベースの更新完了

念のため、サイトの状態や最近のログメッセージなどを確認して異常がないこかチェックしておいてください。

モジュールのアップデート以外にもモジュール一覧の画面から各モジュールの設定や権限の設定などへのリンクボタンが表示されているので、新しいモジュールを導入時に設定忘れをする機会は少なくなりそうです。

3.モジュールの設定

MediaFeatureモジュールを導入すると主に以下の(1)~(8)の設定が追加されます。
※MediaFeatureモジュール内のファイルを利用すればこのモジュールを有効にしなくてもそれぞれの設定をインポートで対応できるかもしれません。

(1)MediaFrontプリセット

MediaFrontプリセット

(2)コンテンツタイプ

コンテンツタイプ

(3)フィールド一覧

フィールド一覧

(4)ファイルタイプ

ファイルタイプ

(5)ファイルスタイル

ファイルスタイル

(6)画像スタイル(ImageCache)

画像スタイル

(7)Media Views

ページ1:/media(フロントページ)

media views (ページ1:フロントページ用)

ページ2:/player(プレイリスト用ページ)

media views (ページ2:プレイリスト用)

ブロック1:プレイリスト用ブロック

media views (ブロック1:プレイリスト用ブロック)

(8)ブロック(vews_player用フロントページのプレイヤ)

views_player用ブロック(media viewsと連携)
※MediaFrontプリセットとViewsのページを連携して表示可能(フロントページ:/media)に使用しています。
※media以外には非表示
 

4.media contentの代替案

以上でデモと同じサイトが構築できるはずが、先に記載したようにテスト用サイトではMediaFeatureモジュール内のmedia_contentが導入できませんでした。そのためデモの画面に表示されているようなノードが作成できません。
これについては、Acquia Dev Desktopでは全く問題ありませんでしたので、環境に左右されるのかもしれません。
恐らく、入力した画像URLからうまく画像URLが取得(parserが機能していない?)できていないことが原因でfilesizeを算出する箇所でエラーが発生しているのだと思います。これには使用しているPHPのバージョンが関係していると思われます。
※モジュールのアップデートによる影響ではないことは確認済みです。
※2012.01.18解決済みです。

とりあえず、以下の方法でメディアコンテンツタイプを使ってタイトル、ビデオURLと画像URLを入力していけば同じような結果になるはずです。

(1)「mediafile.txt」または「media_content.install」を参考に手入力

デモではYouTubeからビデオを、専用サイトからCoverImageをそれぞれダウンロードするようになっており、それぞれをメディアコンテンツタイプのMedia AsetフィールドとImage Asetフィールドに入力しています。
しかし、Media:YouTubeを導入していますので、ビデオのURLのみ入力すれば画像のURLを内部で取得してくれるはずです。

メディアノードの作成は、sites/all/modules/media_feature以下にある「mediafile.txt」の内容を手入力して作成するか、さらに下層にあるmedia_content.installのリストを参照して手入力でノードを作成すればデモと同じような結果にはなるはずです。

(2)FeedsによりRSS Feedからメディアノードへ自動入力(作成)

ビデオURLの入手サイトがYouTubeなので動画URLをRSS Feedで一括入手して、それからノードを自動作成する方法でも同じ事だと思います。
この場合、デモと同じビデオコンテンツにはできませんが動作確認は可能です。
利用シーンを想定すると、1タイトルごとに手入力するよりもRSS Feedを利用して自動更新させるほうが現実的だと思います。
※この方法でも結局のところMedia conectと同じ箇所が原因で正常に処理できませんでしたが、2012.01.18に解決しました。

次回は、Feedsモジュールを利用してRSS Feedからメディアノードを作成する方法について記載したいと思いますが、この段階ではまだファイルのアップロードやプレイヤーの表示などに関する動作テストは全くできていない状態です。