Adds snippet plugin to django CMS.
Project description
django CMS Snippet provides a plugin for django CMS to inject HTML, CSS or JavaScript snippets into your website.
This project is endorsed by the django CMS Association. Join us on Slack.
Warning: We recommend using this plugin only during development:
This plugin is a potential security hazard, since it allows authorized- users to place custom markup or Javascript on pages bypassing all of Django's normal sanitization mechanisms. This could be exploited by users with the right to add snippets to elevate their privileges to superusers. This plugin should only be used during the initial development phase for rapid prototyping and testing.
Contribute to this project and win rewards
Because this is a an open-source project, we welcome everyone to get involved in the project and receive a reward for their contribution. Become part of a fantastic community and help us make django CMS the best CMS in the world.
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.
We’re grateful to all contributors who have helped create and maintain this package. Contributors are listed at the contributors section.
One of the easiest contributions you can make is helping to translate this addon on Transifex.
Documentation
See REQUIREMENTS in the setup.py file for additional dependencies.
Installation
For a manual install:
run pip install djangocms-snippet
add djangocms_snippet to your INSTALLED_APPS
run python manage.py migrate djangocms_snippet
Djangocms-snippet uses the ace code editor which normally is loaded from a CDN. If you prefer your application to provide the editor locally, you can change the requirement from djangocms_snippet to djangocms_snippet[static-ace] and add djangocms_static_ace to your project’s INSTALLED_APPS.
Configuration
To allow the contents of all snippets to be searchable, please set DJANGOCMS_SNIPPET_SEARCH to True in your settings:
DJANGOCMS_SNIPPET_SEARCH = True
We are using Ace as our editor of choice to edit the snippet content. You can customize the theme and mode through:
DJANGOCMS_SNIPPET_THEME = 'github' DJANGOCMS_SNIPPET_MODE = 'html'
If dynamic content is inserted (for example {% show_menu ... %}), the plugin cache must be disabled, please set DJANGOCMS_SNIPPET_CACHE to False in your settings:
DJANGOCMS_SNIPPET_CACHE = False # default value is False
Template tag
You can also use a template tag to render a snippet rather than a plugin:
{% load snippet_tags %} {% snippet_fragment [reference] %}
Replace [reference] with either:
The snippet ID, e.g. {% snippet_fragment 42 %}
The snippet slug, e.g. {% snippet_fragment 'my-snippet' %}
The snippet instance, e.g. {% snippet_fragment instance.snippet %}
Optionally provide a fallback if there is no matching id/slug/instance:
{% snippet_fragment 'my-snippet' or %} ... your content fallback here ... {% endsnippet_fragment %}
Running Tests
You can run tests by executing:
virtualenv env source env/bin/activate pip install -r tests/requirements.txt python setup.py test
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file djangocms-snippet-3.1.0.tar.gz
.
File metadata
- Download URL: djangocms-snippet-3.1.0.tar.gz
- Upload date:
- Size: 32.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9c38716aa03aa82530d2ed9766decc3a6a03482607d015d0e58c5cfadb76c1c4 |
|
MD5 | 5fa4bab8facdb5f4fca9789d5e2750a5 |
|
BLAKE2b-256 | 823808776d2a5314823dbbf532f9627d0ce1cfb2df8f27b781888b6ded5ff3c7 |
File details
Details for the file djangocms_snippet-3.1.0-py3-none-any.whl
.
File metadata
- Download URL: djangocms_snippet-3.1.0-py3-none-any.whl
- Upload date:
- Size: 137.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6a5a6aa51ac97d25ecc52f5ff795fec765b66a875b8518098301a532c1291dbe |
|
MD5 | 07ae6582bd23d1e367b68ca3fa24407b |
|
BLAKE2b-256 | e3cf37bba28c53ce05fb0b9abf2d0134e6bac12ee598337f0714db6878799c52 |