public function SlickFormatterViewTrait::commonViewElements in Slick Carousel 8.2
Returns similar view elements.
4 calls to SlickFormatterViewTrait::commonViewElements()
- SlickEntityFormatterBase::viewElements in src/
Plugin/ Field/ FieldFormatter/ SlickEntityFormatterBase.php - SlickFileFormatterBase::viewElements in src/
Plugin/ Field/ FieldFormatter/ SlickFileFormatterBase.php - SlickMediaFormatter::viewElements in src/
Plugin/ Field/ FieldFormatter/ SlickMediaFormatter.php - SlickTextFormatter::viewElements in src/
Plugin/ Field/ FieldFormatter/ SlickTextFormatter.php - Builds a renderable array for a field value.
File
- src/
Plugin/ Field/ FieldFormatter/ SlickFormatterViewTrait.php, line 15
Class
- SlickFormatterViewTrait
- A Trait common for all blazy formatters.
Namespace
Drupal\slick\Plugin\Field\FieldFormatterCode
public function commonViewElements(FieldItemListInterface $items, $langcode, array $entities = [], array $settings = []) {
// Collects specific settings to this formatter.
$settings = array_merge($this
->buildSettings(), $settings);
$settings['langcode'] = $langcode;
// Build the settings.
$build = [
'settings' => $settings,
];
// Modifies settings before building elements.
$entities = empty($entities) ? [] : array_values($entities);
$this->formatter
->preBuildElements($build, $items, $entities);
// Build the elements.
$elements = $entities ?: $items;
$this
->buildElements($build, $elements, $langcode);
// Modifies settings post building elements.
$this->formatter
->postBuildElements($build, $items, $entities);
// Pass to manager for easy updates to all Blazy formatters.
if (empty($settings['use_theme_field'])) {
// Return field-vanilla without field markup.
return $this->manager
->build($build);
}
else {
// Return as array to render in regular field.html.twig:
return [
$this->manager
->build($build),
];
}
}