Modules can be "pluggable": that means they make Plugins that can be inserted into the slots on web pages.
These guides will show you how to develop such a plugin.
If you want to add new functionality that visitors to your site will see, you will need to write a module that is "pluggable".
This example shows how to make a simple "Hello World" plugin.
It demonstrates how to write the showSlot() method to output text onto a page.
This example shows a more advanced version of the "Hello World" plugin.
It demonstrates how to write the init() method to change how a plugin is displayed, how to write a Twig framework, and how to make a Twig framework multilingual.
This example shows how to create a plugin setting, how to work with phrases to make a plugin multi-lingual, and how to give your module a revision number.
When the CMS creates a page and there are plugins in that page's slots, it processes the methods of those plugins' modules according to the following flow