Creating Plug & Play Modules for OpenCms 8

Track: Workshop
Speaker: Rüdiger Kurz (Alkacon Software GmbH)

Abstract

OpenCms, since its first public version, features a module mechanism that allows encapsulating functionalities in separate modules. However, the template mechanism of OpenCms up to version 7.5 left many details to the developer. It turned out that developing reusable modules is quite difficult, since there used to be many dependencies from a module to the template it was developed for. The improved template and module mechanism of OpenCms 8 addresses these issues, removes theses dependencies and therefore allows creating modules that are not depended on the template.

Rüdigers presentation did include an overview of the problem with pre-OpenCms 8 modules using the “Template 2” example from the OpenCms 7.x distribution. He did then show how the problems have been addressed in OpenCms 8. Among other things, this includes the possibility to create HTML output that is rendered differently depending on the space available in the template.

Best practices for structuring modules were also explained, for example how to layout module resources in different folders and naming conventions we suggest.

Latest News

  • OpenCms 14 available

    Oct 11, 2022 - This version features XML schema versioning with automatic content rewrite. Also new is support for two factor authentication (2FA) in the user login. A source code editor widget is available for multi-line text input fields. The Mercury template has been updated to use Bootstrap 5.2.

  • OpenCms 14 Release Notes

    Oct 11, 2022 - The OpenCms 14 release notes contain detailed information about the new features and fixes in this version.

  • Alkacon OCEE 14

    Oct 11, 2022 - Alkacon OCEE 14 is the latest OCEE release for OpenCms 14. This version fixes a number of issues that have been detected in Alkacon OCEE 13.

  • OpenCms 13 available

    Apr 13, 2022 - OpenCms 13 features a new plugin system as a more flexible replacement of the "headincludes" functionality. Geo search functionality has been added to find contents by geo coordinates. Extensions to the template variant mechanism allow setting overrides and renaming of formatter keys. There are also refinements for the "Mercury" default template as well as security improvements.

Try the OpenCms Live Demo