public function CshsFlexibleHierarchyFormatter::viewElements in Client-side Hierarchical Select 8
Same name and namespace in other branches
- 8.3 src/Plugin/Field/FieldFormatter/CshsFlexibleHierarchyFormatter.php \Drupal\cshs\Plugin\Field\FieldFormatter\CshsFlexibleHierarchyFormatter::viewElements()
- 8.2 src/Plugin/Field/FieldFormatter/CshsFlexibleHierarchyFormatter.php \Drupal\cshs\Plugin\Field\FieldFormatter\CshsFlexibleHierarchyFormatter::viewElements()
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 FormatterInterface::viewElements
File
- src/
Plugin/ Field/ FieldFormatter/ CshsFlexibleHierarchyFormatter.php, line 78
Class
- CshsFlexibleHierarchyFormatter
- Plugin implementation of the "Flexible hierarchy" formatter.
Namespace
Drupal\cshs\Plugin\Field\FieldFormatterCode
public function viewElements(FieldItemListInterface $items, $langcode) : array {
$elements = [];
$linked = $this
->getSetting('linked');
$format = $this
->getSetting('format');
$clear = $this
->getSetting('clear');
$token = \Drupal::token();
foreach ($this
->getEntitiesToView($items, $langcode) as $delta => $term) {
$text = $token
->replace($format, [
'term' => $term,
], [
'clear' => $clear,
]);
if ($linked) {
$text = Link::fromTextAndUrl($text, $term
->toUrl())
->toString();
}
$elements[$delta]['#markup'] = $text;
}
return $elements;
}