Wie erhalte ich die URL eines Dateifelds eines bestimmten Knotens?


11

$node->field_filegibt mir eine FileFieldItemList, während der erste Eintrag ein FileItem zu sein scheint .

$node->field_file->getValue()gibt mir eine ganze Zahl (ich denke die Datei-ID). Wie kann ich tatsächlich die herunterladbare Datei uri daraus erhalten?

Antworten:


14

Zuerst müssen Sie es mit dem fid laden:

  $file = \Drupal\file\Entity\File::load($fid);

Und danach :

  $imageSRC = file_create_url($file->getFileUri());

2
Sie können File :: url () verwenden, um dies zu verkürzen: $ imageSRC = $ file-> url ();
Keithm

File:url()ist ab veraltet 8.7.x. Siehe: drupal.org/node/3019830
Keven

2

Es ist auch möglich, Einzeiler mit magischer Methode zu machen:

$node->field_file->entity->getFileUri();

Oder als String rendern

Option 1: $node->field_file->entity->url();

Option 2: file_create_url($node->field_file->entity->getFileUri());

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.