logo

Extra Block Types (EBT) - Nieuwe Layout Builder ervaring❗

Extra Block Types (EBT) - gestileerde, aanpasbare bloktypes: Slideshows, Tabs, Cards, Accordions en vele andere. Ingebouwde instellingen voor achtergrond, DOM Box, javascript-plugins. Ervaar vandaag al de toekomst van layout building.

Demo EBT-modules Download EBT-modules

❗Extra Paragraph Types (EPT) - Nieuwe Paragraphs ervaring

Extra Paragraph Types (EPT) - analoge op paragrafen gebaseerde set modules.

Demo EPT-modules Download EPT-modules

Scroll

9.4. Pagina's maken voor een premium account.

17/10/2025, by Ivan

In deze les breiden we de mogelijkheden van onze module uit en creëren we content die alleen beschikbaar zal zijn voor geregistreerde gebruikers of gebruikers met een specifieke rol.

Codevoorbeelden kunnen worden bekeken op github:

https://github.com/levmyshkin/drupalbook8

Laten we beginnen met het toevoegen van een nieuw YML-bestand in onze drupalbook.permissions.yml modulemap:

access premium pages:
  title: 'Toegang Premium pagina's'
  description: 'Een aangepaste machtiging voor jouw pagina's.'
  restrict access: TRUE

Ga nu naar de pagina voor toegangsrechten en stel toegang in voor Premium content voor de benodigde rollen, ik zal dit doen voor geregistreerde gebruikers:

/admin/people/permissions

permission

Maak nu in drupalbook.routing.yml een nieuwe route aan, waarin we onze nieuwe rechten en een nieuwe methode voor het weergeven van content aangeven:

drupalbook.private_content:
   path: '/private-page'
   defaults:
     _controller: '\Drupal\drupalbook\Controller\FirstPageController::privateContent'
     _title: 'Private content'
   requirements:
     _permission: 'access premium pages'

Na het toevoegen van een nieuwe route, moet je de cache leegmaken.

We moeten ook de privateContent () methode toevoegen aan onze FirstPageController klasse:

/**
 * Retourneert een privépagina.
 *
 * @return array
 *   Een eenvoudige renderbare array.
 */
public function privateContent() {
  $element = array(
    '#markup' => 'Private content',
  );
  return $element;
}

Nu kun je de cache leegmaken en verifiëren of onze pagina niet toegankelijk is voor niet-geregistreerde gebruikers.

drupalbook

Codevoorbeelden kunnen worden bekeken op github:

https://github.com/levmyshkin/drupalbook8