function BlockContentBlock::build

Same name and namespace in other branches
  1. 9 core/modules/block_content/src/Plugin/Block/BlockContentBlock.php \Drupal\block_content\Plugin\Block\BlockContentBlock::build()
  2. 8.9.x core/modules/block_content/src/Plugin/Block/BlockContentBlock.php \Drupal\block_content\Plugin\Block\BlockContentBlock::build()
  3. 10 core/modules/block_content/src/Plugin/Block/BlockContentBlock.php \Drupal\block_content\Plugin\Block\BlockContentBlock::build()

Overrides BlockPluginInterface::build

File

core/modules/block_content/src/Plugin/Block/BlockContentBlock.php, line 187

Class

BlockContentBlock
Defines a generic block type.

Namespace

Drupal\block_content\Plugin\Block

Code

public function build() {
    if ($block = $this->getEntity()) {
        return $this->entityTypeManager
            ->getViewBuilder($block->getEntityTypeId())
            ->view($block, $this->configuration['view_mode']);
    }
    else {
        return [
            '#markup' => $this->t('Block with uuid %uuid does not exist. <a href=":url">Add content block</a>.', [
                '%uuid' => $this->getDerivativeId(),
                ':url' => $this->urlGenerator
                    ->generate('block_content.add_page'),
            ]),
            '#access' => $this->account
                ->hasPermission('administer blocks'),
        ];
    }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.