Skip to main content

Adds style plugin to django CMS

Project description

pypi build coverage

django CMS Style is a plugin for django CMS that allows you to create a HTML container containing classes, styles, ids and other attributes definable through the plugins settings.

This addon is compatible with Divio Cloud and is also available on the django CMS Marketplace for easy installation.



This is a an open-source project. We’ll be delighted to receive your feedback in the form of issues and pull requests. Before submitting your pull request, please review our contribution guidelines.

This addon is compatible with Divio Cloud and is also available on the django CMS Marketplace for easy installation.

One of the easiest contributions you can make is helping to translate this addon on Transifex.


See REQUIREMENTS in the file for additional dependencies:

python django djangocms


For a manual install:

  • run pip install djangocms-style

  • add djangocms_style to your INSTALLED_APPS

  • run python migrate djangocms_style


django CMS Style enables you to provide a list of predefined classes to be displayed as first options, the default choices are:

DJANGOCMS_STYLE_CHOICES = ['container', 'content', 'teaser']

You are encouraged to modify that setting to your projects specifications.

This addon provides a default template for all instances. You can provide additional template choices by adding a DJANGOCMS_STYLE_TEMPLATES setting:

    ('feature', _('Feature')),

You’ll need to create the feature folder inside templates/djangocms_style/ otherwise you will get a template does not exist error. You can do this by copying the default folder inside that directory and renaming it to feature.

The available tags can also be configured, the default choices are:

DJANGOCMS_STYLE_TAGS = ['div', 'article', 'section', 'header', 'footer',
                        'h1', 'h2', 'h3', 'h4', 'h5', 'h6']


All tags included in this list should be "paired tags" that require a
closing tag. It does not make sense to attempt to use 'img', 'input',
'meta', or other self-closing tags in this setting.

Also, the developer is advised to choose the tag-types wisely to avoid HTML
validation issues and/or unintentional security vulnerabilities. For
example, the 'script' tag should never be allowed in
``DJANGOCMS_STYLE_TAGS`` (though, we do not prevent this). If you have
an application where you find yourself wishing to do this, please see
djangocms-snippet as an alternative, but note these projects also come
with appropriate security warnings.

After that you can place any number of other plugins inside this style plugin. It will create a div (or other tag-type) with a class that was prior selected around the contained plugins.

Running Tests

You can run tests by executing:

virtualenv env
source env/bin/activate
pip install -r tests/requirements.txt
python test

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

djangocms-style-3.0.0.tar.gz (28.9 kB view hashes)

Uploaded source

Built Distribution

djangocms_style-3.0.0-py3-none-any.whl (127.0 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page