configFactory = $configFactory; } /** * {@inheritdoc} */ public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) { return new static( $configuration, $plugin_id, $plugin_definition, $container->get('config.factory') ); } /** * {@inheritdoc} */ public function defaultConfiguration() { return [ 'block_count' => 10, ]; } /** * {@inheritdoc} */ protected function blockAccess(AccountInterface $account) { return AccessResult::allowedIfHasPermission($account, 'access content'); } /** * {@inheritdoc} */ public function build() { $title = $this->configuration['label']; return [ '#theme' => 'feed_icon', '#url' => Url::fromUri('internal:/rss.xml'), '#title' => $title, ]; } }