public function ViewExecutable::buildThemeFunctions in Drupal 9
Same name and namespace in other branches
- 8 core/modules/views/src/ViewExecutable.php \Drupal\views\ViewExecutable::buildThemeFunctions()
Provides a full array of possible theme functions to try for a given hook.
Parameters
string $hook: The hook to use. This is the base theme/template name.
Return value
array An array of theme hook suggestions.
File
- core/
modules/ views/ src/ ViewExecutable.php, line 2421
Class
- ViewExecutable
- Represents a view as a whole.
Namespace
Drupal\viewsCode
public function buildThemeFunctions($hook) {
$themes = [];
$display = isset($this->display_handler) ? $this->display_handler->display : NULL;
$id = $this->storage
->id();
if ($display) {
$themes[] = $hook . '__' . $id . '__' . $display['id'];
$themes[] = $hook . '__' . $display['id'];
// Add theme suggestions for each single tag.
foreach (Tags::explode($this->storage
->get('tag')) as $tag) {
$themes[] = $hook . '__' . preg_replace('/[^a-z0-9]/', '_', strtolower($tag));
}
if ($display['id'] != $display['display_plugin']) {
$themes[] = $hook . '__' . $id . '__' . $display['display_plugin'];
$themes[] = $hook . '__' . $display['display_plugin'];
}
}
$themes[] = $hook . '__' . $id;
$themes[] = $hook;
return $themes;
}