http://drupal.org/node/1092444であった狂気以来、多くのことが変わりました。ありがたいことに、ファイルエンティティの表示フォーマッタのテーマ設定と設定が、はるかに簡単で簡単になりました。
次のドキュメントは、Media 2.xおよびFile Entityに関するものです。ただし、そのほとんどはMedia 1.xでわずかな変更を加えて動作します(たとえば、Media 1.xでは、「File Types」ページへのリンクはStructureではなくConfigurationにあります) )。
メディアを表示する
ファイルエンティティおよびメディアモジュールは、保管、管理、およびDrupalの中でメディアを表示するための統一された方法を提供するために一緒に働きます。ユーザーは、画像、ビデオ、音声など、さまざまな種類のメディアを保存および表示するように構成できるファイルフィールドを作成できます。とりわけ。これらのさまざまなタイプのメディアを表示するには、ファイルフィールドにフォーマッターが必要です。フォーマッターは、多くの場合、メディアタイプを提供するモジュールによって提供され、少し追加の構成が必要です。
定義
最初にいくつかの可動部分を説明してから、サイト上のファイルの表示をカスタマイズします。
ファイルタイプ
ファイルはファイルタイプにグループ化されます。各ファイルタイプは、インターネット上のファイル形式を指定する普遍的な方法であるMIMEタイプのリストによって定義されます。デフォルトのファイルタイプは、アプリケーション、オーディオ、画像、テキスト、ビデオ、およびその他です。現在、UIで新しいファイルタイプを定義する方法はありません。
表示モード
表示モードは、コンテンツが特定のコンテキストにあることをDrupal 7(およびすぐに8)に伝えるために使用されます。その後、コンテンツはそのコンテキストに最適な方法で変更または表示できます。ほとんどの人がおそらく使い慣れている2つの表示モードは、デフォルトのティーザーモードとフルモードです。カスタムビューモードは、エンティティビューモード、Display Suiteなどのモジュールを使用して、またはを使用してカスタムモジュールで定義できますhook_entity_info_alter()
。
良いもの、または:ファイルフィールドの表示の管理
ファイルフィールドの表示は、ファイルタイプごとに管理されます。[構造]-> [ファイルの種類]に移動します。使用可能なファイルタイプのリストと、それぞれの[フィールドの管理]、[表示の管理]、および[ファイルの表示の管理]へのリンクが表示されます。
フィールドを管理する
ファイルエンティティモジュールは、ノードおよび分類法の用語と同じように、すべてのファイルを完全なフィールド化可能なエンティティにします。「コンテンツタイプ」セクションと同様に、各ファイルタイプにカスタムフィールドを追加できます。
ディスプレイを管理する
ここでも、「コンテンツタイプ」のように、各ファイルタイプのカスタムフィールドの表示を管理できます。このセクションはファイル自体のフォーマットを制御せず、ファイルエンティティに添付されたフィールドの表示のみを制御します。
このセクションでは、「カスタム表示設定」のトグルも表示されます。展開すると、このエンティティで使用可能な表示モードを有効または無効にできます。「ファイル表示の管理」で使用できるようにするには、ここで表示モードをチェックする必要があります。現時点では、ユーザーが定義したカスタムビューモードと次のデフォルトビューモードのみを使用することをお勧めします。残りはStylesモジュール統合から残り、最終的に削除されます:
- 「ティーザー」(現在デフォルトでは含まれていません。上記の問題のパッチで追加するか、カスタムビューモードとして定義できます)
- 「フル」
- 「プレビュー」(管理コンテキストで使用されます。たとえば、WYSIWYGフィールド、メディアブラウザー、およびメディアフィールドウィジェットのプレースホルダーに使用されます)
ファイル表示の管理
[ファイル表示の管理]で、ファイルタイプのフォーマッターを構成できます。(はい!)。多くのメディアプロバイダーモジュールは、独自のフォーマッターをここに追加します。たとえば、Media:YoutubeおよびMedia:Vimeoは両方とも「プレビュー画像」および「ビデオ」フォーマッタを提供します。
フォーマッタは、ファイルタイプの[表示の管理]セクションで有効になっている各表示モードに対して有効化および構成できます。たとえば、ユーザーは、ノードがティーザーとして表示されるときにMedia:Vimeoプレビューイメージを表示し、ノード全体が表示されるときにVimeoビデオを表示し、ノードが表示されるときに異なる幅と高さのフォーマッター設定を持つビデオを表示することができます「ビデオギャラリー」と呼ばれるカスタムビューモード。多くのフォーマッタ(特に「画像」)では、ユーザーが[構成]-> [画像スタイル]で定義した画像スタイルを選択できます。
複数のメディアプロバイダーが同じフィールドを使用できるため、フォーマッターは上下にカスケードされます。Drupalは、フィールドの出力に適用できる最初のフォーマッターを使用します。ビデオフィールドで「フル」ビューモードの「Media:Youtube Video」、「Media:Vimeo Video」、および「Large filetype icon」フォーマッタが有効になっている場合、ファイルのMIMEタイプがvideo/youtube
Vimeo の場合、DrupalはYoutubeフォーマッタを使用しますMIMEタイプがの場合はフォーマッタ、MIMEタイプがの場合はvideo/vimeo
大きなファイルタイプアイコンにフォールバックしますvideo/{anything else}
。
「ファイル表示の管理」設定を使用して表示するファイルフィールドの構成
「ファイル表示の管理」で定義されたフォーマッタを使用してファイルフィールドを表示するには、「レンダリングされたファイル」を表示するように設定する必要があります。ファイルフィールドを含むコンテンツタイプの [ディスプレイの管理]ページに移動します。「ファイル表示の管理」で定義されたフォーマッタを使用するすべての表示モードについて、ファイルフィールドの形式として「レンダリングファイル」を選択します。
さらなるテーマ
テーマフックオーバーライドを使用して、さらに制御するためにカスタムテーマ関数とテンプレートファイルを作成できます。ファイルエンティティモジュールによって提供されるテーマの提案は次のとおりです。
file__{file type}
file__{file type}__{view mode}
file__{mime type}
file__{mime type}__{view mode}
file__{file id}
file__{file id}__{view mode}
MIMEタイプのすべての「/」と「__」をテーマ関数の「_」とテンプレートファイルの「-」に置き換えます。
一部のメディアプロバイダーモジュールは、これらを独自のテンプレートとテーマフックの提案に置き換えます。Devel Theme Developerモジュール、Mothership's Poor Themer's Helperで利用可能なテーマフックの提案をすべて表示できます。で。詳細については、プロバイダーのドキュメントを参照してください。
アウトロ
お役に立てれば。これをメディアのドキュメントに追加する予定なので、何かを見逃したり、どこかを間違えたり、説明が必要なセクションがある場合はお知らせください。
そして、OPの特定の質問に対するいくつかの短い回答:
- Media 1.x対2.x:2.xは不安定ですが、Drupal.orgの多くの安定バージョンモジュールと同じくらい信頼性があります。大幅に改善された機能に使用する価値はあると思いますが、課題キューでのサポート作業が非常に多いため、devブランチと同様に、新しい更新により実装が中断される可能性があります。それでも、私は本番環境で使用しています。
- メディアは開発中です。期待どおりに機能しないものもあります(たとえば、非イメージWYSIWYG統合)。しかし、それなしで行うことを行うためにインストールしなければならないモジュールの組み合わせよりも、それが行うことの方が優れています。そして、それは良くなっています。