public function LanguageBlock::build in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/modules/language/src/Plugin/Block/LanguageBlock.php \Drupal\language\Plugin\Block\LanguageBlock::build()
Builds and returns the renderable array for this block plugin.
If a block should not be rendered because it has no content, then this method must also ensure to return no content: it must then only return an empty array, or an empty array with #cache set (with cacheability metadata indicating the circumstances for it being empty).
Return value
array A renderable array representing the content of the block.
Overrides BlockPluginInterface::build
See also
\Drupal\block\BlockViewBuilder
File
- core/
modules/ language/ src/ Plugin/ Block/ LanguageBlock.php, line 91 - Contains \Drupal\language\Plugin\Block\LanguageBlock.
Class
- LanguageBlock
- Provides a 'Language switcher' block.
Namespace
Drupal\language\Plugin\BlockCode
public function build() {
$build = array();
$route_name = $this->pathMatcher
->isFrontPage() ? '<front>' : '<current>';
$type = $this
->getDerivativeId();
$links = $this->languageManager
->getLanguageSwitchLinks($type, Url::fromRoute($route_name));
if (isset($links->links)) {
$build = array(
'#theme' => 'links__language_block',
'#links' => $links->links,
'#attributes' => array(
'class' => array(
"language-switcher-{$links->method_id}",
),
),
'#set_active_class' => TRUE,
);
}
return $build;
}