User centered website for ZorgSaam with Drupal 8

The case
Launch date
# Automatically create categories
Categories (taxonomy terms) are created automatically based on specialisms (nodes) and are updated when the specialism changes. This is developed in order to categorize certain content, for example news, based on the specialisms. This is solved by a new, self-developed contrib module:

# Specialists- and patient folders-overviews as subpages of specialisms
All specialisms contain specialists- and patient folder-overviews. These are subpages of the specialisms. Based on the placement of the specialism in the menu, dynamic menu links are created that refer to these overviews. This is solved by a route subscriber who runs through all the specialisms and makes routes available for the overviews. The links in the menu are dynamically created by a menu deriver. Menu links are automatically deleted by an event subscriber.

# Calender item view
The calendar items show the date view as a day from a tear calendar. For this, day and month had to be separated from each other. This is solved by creating a field formatter in which HTML markup and separate date elements can be placed.

# Scroll to element
Specialisms pages contain links that refer to "Contact and routes" and "Our specialists". These elements are situated on the same page. When the information of these elements is available, the link appears, otherwise the link will be hidden. When you click on this link, you automatically scroll to the element. When the element is a tab, it will open automatically. This is solved by making an overview (view) that is related to the current page. This determines whether the link should be displayed. Scrolling is managed by a new, self-developed contrib module: This module enables scrolling the link to a target by use of a selector.

# Menu blocks
There are many variations of menu blocks on various places on the website. For example, the current level, the underlying level, etc. In addition, the combination with the menu title deviates regularly. This is solved by the menu_block module (, where we provided several contributed patches in order to let everything work together.
Community contributions

# Enable link targeting by the content manager

# Automatically create taxonomy terms
Automatically create taxonomy terms based on specialisms so that other content can be linked to it and mutual relationships are maintained. So the content manager doesn’t have to do this.

# Connecting anchors and elements to which can be scrolled


# Menu block
2+ level menu block not limited to active parent (
The right menu items were not unfolded in the main menu

Menu parent as block title (
Some menu blocks need to have a title that depends on the current page.

# Shield
Allow to authenticate with user credentials (
During the development of the website, the website only had to be visible for ZorgSaam. With this patch, they could use the same login credentials as in Drupal.

# Address
Configure visible address fields per field formatter (
The location overview shows addresses. By default, this module shows all fields that are filled in. This patch makes it possible to configure which address fields are displayed.

# Field group
Tokens in field group's css classes (
This allows the content manager to select icons by using a field. These icons are then displayed on a field group as css class.

# Styled google map
The residential care location overview uses a map based on Styled_google_map.
For this module we have made several functionalities:

- The image of the button to close the pop-up was made configurable (
- Show map at any time, even when there are no results (
- Enable to configure a standard marker icon (
Name client
ZorgSaam Zorggroep Zeeuws-Vlaanderen
Contact information
Name organisation
Name contact person
Wendy Suurmond
E-mail address contact person
Phone number contact person
E-mail address invoice
I agree to the terms of submission