General information
Software specification
Using Drupal 8, PostgreSQL 9.6.5, PHP 7.1 and Apache 2.4.6
Content types
Article
Auxiliar
Basic Page
DDB Newsletter
Event
Exhibition
FAQ
Hilfe
Paragraphs types
Display Modes
Views
Custom modules
DDB also interest
Embetty Twitter Block
Event Search
Node hider
Custom block types
DDB Person Link
Most Read
Entityqueues
Media
Media types
Image Styles
Responsive image styles
User Roles
Custom block types
Languages
Search/Facet
Layout/Theme
Custom Module "DDB Journal" that is a sub-theme from the Bootstrap Theme, that it uses Bootstrap 3.
Block layout
Cronjobs
Drupal Cron runs every 3 hours, checking the current status of the site, including checking the new version of modules/core.
Cache
The global configuration of the cache for all the pages is 1 day, apart of that we are using a module called "Advanced page expiration" to decide which pages
should not be cached, we are using it to don't cache the /journal page, in order to see the person block rotate.
We have learned that the module is very sensitive and if the URL that you don't want to cache uses some parameters you have to put all the options with all the parameters to don't be cached.
More Info: https://cms.deutsche-digitale-bibliothek.de/en/admin/config/development/performance/ape
Newsletter/E-Mails
The DDB anonymous users don't use DDB Journal to subscribe to the newsletter but it uses to send the newsletters created also in DDB Journal.
The DDB Journal Editors before sending the newsletter will take that newsletter subscriptions list and it will import them into DDB Journal
under https://cms.deutsche-digitale-bibliothek.de/de/admin/people/simplenews/import
The DDB Journal Editors create a new content DDB Newsletter and will send to the subscribers, two versions of newsletters will be created,
the email version and the browser version. To create the email version it is used inline CSS and absolute URL for the images.
There are some background images used in the title that it will appear only in the Browser version but not in the email.
Publication of content in the Frontend
If a content is published in the production DDB Journal automatically it will be published in the Frontend.
If the URL in DDB Journal of the content is https://cms.deutsche-digitale-bibliothek.de/de/journal/aktuell/title-content
The URL in the Frontend is https://deutsche-digitale-bibliothek.de/content/journal/aktuell/title-content
Frontend knows if it is a DDB Journal Page if the path starts with /content, then I will get the Drupal Page and it will rewrite the relative URL from the
images, files, links to make it absolute linked to the DDB Journal URL instead of the Frontend URL.
All these functions are done in the ContentService, ContentController... in ddb-common
Publication of menus in the Frontend
The Frontend is calling depending on the current language to these REST API to get the menus and to save it in the cache.
https://cms.deutsche-digitale-bibliothek.de/en/api/menu_items/main?client=DDB-NEXT&_format=json
https://cms.deutsche-digitale-bibliothek.de/en/api/menu_items/footer?client=DDB-NEXT&_format=json
https://cms.deutsche-digitale-bibliothek.de/de/api/menu_items/main?client=DDB-NEXT&_format=json
https://cms.deutsche-digitale-bibliothek.de/de/api/menu_items/footer?client=DDB-NEXT&_format=json