Drupal CMS

Drupal is een open-source content management systeem (CMS) dat wordt gebruikt voor het bouwen en beheren van websites en webapplicaties. Het is gebaseerd op PHP en biedt een scala aan functies en tools voor het maken van aangepaste websites en webapplicaties.

Het is dan ook één van de grootste spelers in CMS-land en dient voor meer dan duizenden bedrijven als platform voor websites. Al overtuigd van deze CMS-krachtpatser? Wij alvast wel.

Wat is Drupal?

Drupal is een open-source content management system (CMS) met Belgische roots. Het is een zeer veilig, flexibel en betrouwbaar platform en wordt ondersteund door een wereldwijde community van ontwikkelaars. Drupal is erg geliefd doordat ze eenvoudig aan te passen is en daarom uitmuntend geschikt is voor maatwerk. Denk maar aan het koppelen van je eigen CRM of software.

Omdat Drupal open-source is, wordt het actief onderhouden en ontwikkeld door een grote gemeenschap van ontwikkelaars en gebruikers, waardoor het voortdurend wordt verbeterd en geüpdatet met nieuwe functies en mogelijkheden.

Is Drupal de beste keuze voor jou?

Deze Belgische trots is een geweldig CMS voor uiteenlopende type projecten. Ben je niet zeker of Drupal wel de beste keuze voor jouw einddoel is? Geen nood. Nadat we bij onze verkennende gesprekken jouw business en klanten volledig uit de doeken hebben gedaan, bekijken we samen met jou welke technologie het beste bij jouw wensen en noden past.

make it fly - Drupal

Drupal als CMS

Drupal is een CMS dat al enkele jaren aan een steile opmars bezig is. Dagelijks werken er wereldwijd duizenden developers aan de uitbreiding van dit platform waardoor er ondertussen meer dan 15.000 (!) extra modules beschikbaar zijn. Drupal is een veelgebruikt CMS voor web en web app development.

Bij Duo zijn we overtuigd van de kracht die in het Drupal content management systeem schuilt en daarom gebruiken we dit vaak als basis voor onze web development. Hierop bouwen onze Drupal developers dan verder en programmeren modules op maat waarmee unieke, interactieve en gebruiksvriendelijke websites en webshops worden gecreëerd.

Enkele reden waarom je zou kiezen voor Drupal, op een rijtje:

  • je geniet van technologie dat met je meegroeit

  • garandeer de meest gebruiksvriendelijke ervaring

  • integreer eenvoudig interne systemen en externe tools

  • beheer centraal je inhoud en verspreidt via diverse kanalen (omnichannel)

  • profiteer van de flexibiliteit, vrijheid en mobielvriendelijkheid van je Drupal website

make it fly - Drupal

De voordelen van Drupal CMS

Deze krachtpatser brengt natuurlijk tal van voordelen met zich mee:

Gebruiksvriendelijk

Drupal zorgt ervoor dat je als eindgebruiker, die misschien niet over alle technische kennis beschikt, zelf gemakkelijk inhoud kunt wijzigen of toevoegen met behulp van een overzichtelijk en gebruiksvriendelijke gebruikersinterface.

Flexibel

Drupal is een zeer flexibel content management systeem, omdat het in staat is de inhoud van de website op basis van tags te organiseren in vooraf bepaalde categorieën. Elke node of content type kan bestaan uit uiteenlopende types inhoud: tekst, afbeeldingen, video, formulieren… Drupal - in tegenstelling tot vele andere content management systemen - kunnen we inzetten voor:

Een eenvoudige website die je huisstijl omarmt en je identiteit uitstraalt? Dan is een Drupal website iets voor jou. Overzichtelijk en makkelijk vindbaar.

Drupal biedt een krachtige en uitgebreide set functies voor e-commerce websites, zoals geavanceerde zoekfunctionaliteit, productcatalogi, winkelwagentjes, betaalgateways, en integratie met externe systemen zoals ERP en CRM.

  • Campagnewebsites of miniwebsites

Je merk echt in de kijker zetten doe je met je identiteit, positionering én een brand of campagne website. Alles wat je nodig hebt om je consumenten te informeren en met hen te communiceren heb je in handen. Daarbovenop geeft het je merk online een unieke look.

Uitbreidbaar

Drupal CMS heeft een modulair ontwerp. Door modules toe te voegen of op maat te schrijven kunnen onze developers handige functies aan je website toevoegen Deze modules kunnen eenvoudig geïmplementeerd worden en maken je website uniek.

Mobielvriendelijk

Het is natuurlijk belangrijk dat je website zich ook op mobiele toestellen perfect aanpast. Dit gaat het best als je website zich aan de grootte van het scherm aanpast, in het zogenaamde responsive webdesign. Drupal zorgt dat we op een vlotte manier een responsive design kunnen integreren. Op deze manier kunnen we je website op alle toestellen (smartphones, tablets en desktops) perfect weergeven.

Externe integratiemogelijkheden

Moeten bepaalde acties op je website ook met een bestaand systeem, zoals een ERP- of CRM-pakket, gekoppeld worden? Met Drupal is het perfect mogelijk om die koppeling te maken. Onze ervaring met diverse systemen zorgt ervoor dat de integratie met externe tools of applicaties, web services of backend-systemen steeds feilloos in je website geïntegreerd wordt.

Zoekmachinevriendelijk (of SEO-vriendelijk)

Een parel van een website moet kunnen gevonden worden door zoekmachines om organisch verkeer naar de website te brengen. Drupal behaalt telkens opnieuw zeer mooie resultaten bij zoekmachines door de uiteenlopende SEO-modules en optimalisatiemogelijkheden.

  1. Cloned entities don't retain their Inline Block usage

    Randal

    Hi @remoschneider,

    Please, refrain from posting a patch that isn't functionally brought up to date. The patch you posted applies, but is buggy due to the lack of the 'getPluginBlockId'-method in the InlineBlockEntityOperations class.

    I'll post a patch that is functionally in line with the old one, if someone wants to turn it into an MR.

  2. Different sites served from the same domain share the session cookie name

    Randal

    @alexpott

    • MR applies cleanly to 10.3.x
    • Done some tests and the results are as expected:
      • Same hash salt -> same session cookie name
      • Different hash salt -> different session cookie name
      • Can stay logged in across all subsites of a multisite on the same hostname with different hash salt
      • Giving all subsites the same hash salt has the expected behavior of being logged out when visiting a different subsite

    Seems ready to me! Thanks for the MR.

  3. Email message field

    Sven Decabooter

    This module provides an email message field (consisting of an email subject and email body). While this could also be achieved by a regular textfield + textarea field, there are occasions where you want to reference an email message as a whole. This module provides that ability.

    Features

    • Drupal field for adding an email subject / body.
    • SOON: Submodule: optional integration with Site Settings and Labels module, to allow easy integration of configurable email messages into Drupal mails - via hook_mail() or Symfony Mailer.

    SOON:

    • Site Settings and Labels
    • Drupal Symfony Mailer
  4. Allow altering of the language fallback for path aliases

    Randal

    Hi @google01,

    Merge request definitely applies to 10.3.x.

    The contents of this: https://git.drupalcode.org/project/drupal/-/merge_requests/5373.diff Should be downloaded and placed in a local folder (e.g. YOUR_PROJECT/patches/core/3091336.patch), make sure there's an empty line at the end, and then add `patches/core/3091336.patch` in your composer patches list.

  5. Make the module extendable with plugins

    Randal

    Could a maintainer please take a look at this issue? It doesn't change the module's initial installation state, and it adds a lot of possible functionality.

    I think this could really spearhead this module's already superb usefulness. (And I'd also be sad to see the work I put in it be for naught :))

  6. Copy block configuration from admin theme when enabling an admin theme

    Randal

    Is there any progress on this, or any way to circumvent this and move forward? Recipes are included in 10.3.x, I feel like the priority of solving this should be a little higher now.

    I can't seem to get it fixed myself, other than patching core and removing the functionality entirely, but that seems a little nuclear...

    On the other hand, I personally do think that this copy functionality should be removed. It definitely doesn't make much sense to copy blocks from one theme to another, given that regions could be entirely different.

  7. Breadcrumbs block within Layout Builder causes errors when moving blocks

    Randal

    Thank you for your patch, alecsmrekar, it seems to work.

    I am however unclear on why this issue pops up at all. why is the `layout_builder.move_block_form`-route being triggered when the arguments clearly call for the `layout_builder.move_block` route.

    I'm wondering if changing the path for one of the two routes would be a more stable solution? Two routes with very similar paths and arguments, that seems like asking for trouble to me.

    Perhaps all non-publicly accessible routes (like ajax routes) should get some prefix, for example.

  8. Add Gitlab CI support

    Sven Decabooter

    Problem/Motivation

    Steps to reproduce

    Proposed resolution

    Remaining tasks

    User interface changes

    API changes

    Data model changes

  9. Add Gitlab CI support

    Sven Decabooter

    Problem/Motivation

    Steps to reproduce

    Proposed resolution

    Remaining tasks

    User interface changes

    API changes

    Data model changes

  10. Add Gitlab CI support

    Sven Decabooter

    Problem/Motivation

    Steps to reproduce

    Proposed resolution

    Remaining tasks

    User interface changes

    API changes

    Data model changes

  11. Add Gitlab CI support

    Sven Decabooter

    Problem/Motivation

    Steps to reproduce

    Proposed resolution

    Remaining tasks

    User interface changes

    API changes

    Data model changes

  12. Remove system_status module dependency

    Sven Decabooter

    Problem/Motivation

    We're getting issues with the system_status module, when setting up this project for the Belgian website.

    PHP message: Drupal\Core\Extension\MissingDependencyException: Unable to install modules: module 'system_status' is incompatible with this version of Drupal core. in /var/www/html/docroot/core/lib/Drupal/Core/Extension/ModuleInstaller.php on line 123 #0 /var/www/html/docroot/core/lib/Drupal/Core/ProxyClass/Extension/ModuleInstaller.php(83): Drupal\Core\Extension\ModuleInstaller->install(Array, false)

    This looks like a module that relies on a 3rd party SaaS service, which we do not need. It also does not have a stable release, so we would like to get rid of it, since it provides no added value to our instance.

    Proposed resolution

    - Remove dependency on system_status module

  13. Add Gitlab CI support

    Sven Decabooter

    Problem/Motivation

    Steps to reproduce

    Proposed resolution

    Remaining tasks

    User interface changes

    API changes

    Data model changes

  14. Add Gitlab CI support

    Sven Decabooter

    Problem/Motivation

    Steps to reproduce

    Proposed resolution

    Remaining tasks

    User interface changes

    API changes

    Data model changes

  15. Incompatible with Drupal 10 PSR/log v3

    Sven Decabooter

    Problem/Motivation

    Upon installation of this module on Drupal 10, I get the following error:

    PHP Fatal error:  Declaration of Drupal\request_logger\Logger\RequestLogger::log($level, $message, array $context = []) must be compatible with Drupal\dblog\Logger\DbLog::log($level, Stringable|string $message, array $context = []): void in /app/web/modules/contrib/request_logger/src/Logger/RequestLogger.php on line 42
    

    Steps to reproduce

    * Install module on a Drupal 10 installation.

    Proposed resolution

    * Implement changes as documented in [#3284415]

    Remaining tasks

    * Implement changes as documented in [#3284415]

  16. Add Gitlab CI support

    Sven Decabooter

    Problem/Motivation

    Steps to reproduce

    Proposed resolution

    Remaining tasks

    User interface changes

    API changes

    Data model changes

  17. Add Gitlab CI support

    Sven Decabooter

    Problem/Motivation

    Steps to reproduce

    Proposed resolution

    Remaining tasks

    User interface changes

    API changes

    Data model changes

  18. Drupal 11 support

    Sven Decabooter

    Problem/Motivation

    Steps to reproduce

    Proposed resolution

    Remaining tasks

    User interface changes

    API changes

    Data model changes

  19. Masquerade Role box Showing in Popup

    Randal

    The fix looks good at first glance, but please leave issues in needs review until the maintainer has actually committed the changes. I'll try to do this ASAP.

  20. Discover image styles from all entity display modes

    Randal

    Problem/Motivation

    Currently in code, only image styles from the 'default' view mode are discovered:

    $plugin = $this->entityTypeManager
      ->getStorage('entity_view_display')
      ->load($entity->getEntityTypeId() . '.' . $entity->bundle() . '.default')
      ->getRenderer($this->fieldDefinition->getName());

    Proposed resolution

    Discover image styles across all available view modes.

    Remaining tasks

    I'll create a merge request, please review.

Fons Vandamme

Gebruik Drupal als CMS voor een veilige en betrouwbare website die altijd up-to-date is.

Fons Vandamme
Drupal Architect & Sales manager

Met doordachte positionering scheppen we met Drupal een optimale visuele hiërarchie, cohesie en gebruiksvriendelijkheid.