public function MediaPdfThumbnailImageFieldFormatter::viewElements in Media PDF Thumbnail 8.4
Builds a renderable array for a field value.
Parameters
\Drupal\Core\Field\FieldItemListInterface $items: The field values to be rendered.
string $langcode: The language that should be used to render the field.
Return value
array A renderable array for $items, as an array of child elements keyed by consecutive numeric indexes starting from 0.
Overrides ImageFormatter::viewElements
File
- src/
Plugin/ Field/ FieldFormatter/ MediaPdfThumbnailImageFieldFormatter.php, line 151
Class
- MediaPdfThumbnailImageFieldFormatter
- Plugin implementation of the 'image' formatter.
Namespace
Drupal\media_pdf_thumbnail\Plugin\Field\FieldFormatterCode
public function viewElements(FieldItemListInterface $items, $langcode) {
$image_link_setting = $this
->getSetting('image_link');
$element = parent::viewElements($items, $langcode);
$mediaEntity = $element[0]['#item']
->getParent()
->getParent()
->getEntity();
if ($image_link_setting == 'pdf_file' && !empty($mediaEntity)) {
$url = $this
->getPdfFileUri($mediaEntity);
$element[0]['#url'] = $url ?: $element[0]['#url'];
}
return $element;
}