.. _plugins-index: .. module:: djpcms.plugins ============================ Plugins ============================ Plugins are the design principle of ``djpcms``, without them there would be no system, just a collection of python scripts! Plugins are components that add capabilities to ``djpcms`` which, in turns, acts as a manager and placeholder for them. Adding your own is extremely simple as well as moving them around in a page. Plugins are classes which derive from :class:`djpcms.plugins.DJPplugin`, a straightforward python class. Plugins are not database models, they simply describe how content is displayed in a page and how users can interact with them. Thats it! .. toctree:: :maxdepth: 1 main defaults others extending .. admonition:: How do we tell djpcms to include our plugins? Including plugins in your application is easy, simply add their dotted path to the :setting:`DJPCMS_PLUGINS` setting. .. hint:: Great no database required for plugins. How do we store them? :class:`djpcms.models.BlockContent` How do we add dynamic content? :class:`djpcms.views.appsite.ModelApplication`