web-dev-qa-db-ja.com

field_view_fieldを使用してビューの画像URLを取得する

タイトルと画像の2つのフィールドを持つ画像と呼ばれるコンテンツタイプがあります。

基準に基づいて必要な画像を表示するようにViewsブロックを作成しました。

必要なのは、未加工の画像のURLを用意することです。

Example:

/sites/default/files/background1.jpg

私はこの記事を見つけました レンダリングDrupal 7フィールド(正しい方法) そして、率直に言って、私は途方に暮れています。

Drupal API から:

field_view_field($entity_type, $entity, $field_name, $display = array(), $langcode = NULL)

Views-view-fields--my_custom_view.tpl.phpをコーディングする必要があることはわかっていますが、実行するとすべてエラーが発生します。

探している画像から単純にURLを取得できるように、このファイルに何を入れる必要がありますか?

また、チュートリアルを正しい方向に向けるとよいでしょう。私が見つけたすべては、あなたがDrupalの専門家であることを前提としています。この時点で、すべてが循環しているように感じます。

2
Allan

ファイルエンティティとの関係を作成することで、ビューを厳密に使用してこれを行うことができました。

私はこれをここで見つけることができる別の投稿でこれを詳しく説明しました 画像(または任意のファイル)からのURLの取得

これにより、URLフォーマッタモジュールが不要になり、そのままD8互換になります。

4
Allan

画像URLフォーマッタ

このモジュールは、画像フィールドのURLフォーマッターを追加します。次に、画像のURLを直接出力できます。

ほとんどのコード、おそらく90%以上は、drupalコアからコピーしただけです。十分に安定していると思います。

コンテンツタイプを作成し、それに画像フィールドインスタンスを追加した後、ビューを使用してこのコンテンツタイプのデータをエクスポートします。データを出力したいので、別のdrupal 7サイトとフィードモジュール。必要なのは画像フィールドのURLですが、画像のURLを直接エクスポートできませんでした。そのため、この小さなモジュールを作成します。

用途

(1)このモジュールをインストールした後、画像フィールドを追加してから、このバンドルの管理表示ページに移動できます。ここでは、フォーマット列で、「画像」の代わりに「画像URL」を選択できます。

(2)ビューに画像フィールドを追加した後、このフィールドのフォーマッターを構成します。ここで、「画像」の代わりに「画像URL」を選択できます。

次に、画像自体の代わりに画像のURLを出力できます。

1
Adi