Drupal 8では、Drupal 7のように、ファイルフィールド設定でファイルの説明を有効にすることができます。
しかし、ファイルエンティティがプリプロセスに読み込まれると、ファイルに入力された説明の値を取得する方法がわかりません。私は試しました(成功なし):
$myfileentity->toArray();
$myfileentity->get('description');
$myfileentity->get('description_field');
$myfileentity->label();
何か案が ?
ありがとう。
説明は、ファイルエンティティではなく、ファイルフィールドに保存されます。アクセスするには、$node->yourfilefield->description
。
フィールドに複数のファイルがある場合は、次のように説明を取得できます。
$values = $field->getValue();
foreach($values as $value){
$descriptions[] = $value['description'];
}
Drupal 8.4。
「説明」フィールドの値を取得する場合は、次のようなものを使用できます。
_$fid = 1; //Your file id
$file = \Drupal\file\Entity\File::load($fid);
$file->get('filename')->value; //here to get the file name
_
リストを取得するには、dpm(file->toArray());
を試してください
このページをチェックして、ファイルとフィールドについて知ることができます。