Allows you to upload a file. A filetype icon will be assigned based on the file extension.
For installation be sure you have the following in the INSTALLED_APPS setting in your project’s settings.py file:
INSTALLED_APPS = (
# ...
'cms.plugins.file',
# ...
)
You should take care that the directory defined by the configuration setting CMS_PAGE_MEDIA_PATH (by default cms_page_media/ relative to MEDIA_ROOT) is writable by the user under which django will be running.
You might consider using django-filer with django CMS plugin and its cmsplugin_filer_file component instead.
Warning
The builtin file plugin only works with local storages. If you need more advanced solutions, please look at alternative file plugins for the django CMS, such as django-filer.
Allows you to upload and display a Flash SWF file on your page.
For installation be sure you have the following in the INSTALLED_APPS setting in your project’s settings.py file:
INSTALLED_APPS = (
# ...
'cms.plugins.flash',
# ...
)
Displays a map of an address on your page.
For installation be sure you have the following in the INSTALLED_APPS setting in your project’s settings.py file:
INSTALLED_APPS = (
# ...
'cms.plugins.googlemap',
# ...
)
Displays a link to an arbitrary URL or to a page. If a page is moved the URL will still be correct.
For installation be sure to have the following in the INSTALLED_APPS setting in your project’s settings.py file:
INSTALLED_APPS = (
# ...
'cms.plugins.link',
# ...
)
Note
As of version 2.2, the link plugin no longer verifies the existence of link targets.
Displays a picture in a page.
For installation be sure you have the following in the INSTALLED_APPS setting in your project’s settings.py file:
INSTALLED_APPS = (
# ...
'cms.plugins.picture',
# ...
)
There are several solutions for Python and Django out there to automatically resize your pictures, you can find some on Django Packages and compare them there.
In your project template directory create a folder called cms/plugins and in it create a file called picture.html. Here is an example picture.html template using easy-thumbnails:
{% load thumbnail %}
{% if picture.url %}<a href="{{ picture.url }}">{% endif %}
{% ifequal placeholder "content" %}
<img src="{% thumbnail picture.image 300x600 %}"{% if picture.alt %} alt="{{ picture.alt }}"{% endif %} />
{% endifequal %}
{% ifequal placeholder "teaser" %}
<img src="{% thumbnail picture.image 150x150 %}"{% if picture.alt %} alt="{{ picture.alt }}"{% endif %} />
{% endifequal %}
{% if picture.url %}</a>{% endif %}
In this template the picture is scaled differently based on which placeholder it was placed in.
You should take care that the directory defined by the configuration setting CMS_PAGE_MEDIA_PATH (by default cms_page_media/ relative to MEDIA_ROOT) is writable by the user under which django will be running.
Note
For more advanced use cases where you would like to upload your media to a central location, consider using django-filer with django CMS plugin and its cmsplugin_filer_image component instead.
Renders an HTML snippet from an HTML file in your templates directories or a snippet given via direct input.
For installation be sure you have the following in the INSTALLED_APPS setting in your project’s settings.py file:
INSTALLED_APPS = (
# ...
'cms.plugins.snippet',
# ...
)
Note
This plugin should mainly be used during development to quickly test HTML snippets.
Warning
This plugin is a potential security hazard, since it allows admins to place custom JavaScript on pages. This may allow administrators 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 should be disabled on production sites.
Displays text. If plugins are text-enabled they can be placed inside the text-flow. At this moment the following core plugins are text-enabled:
The current editor is Wymeditor. If you want to use TinyMce you need to install django-tinymce. If tinymce is in your INSTALLED_APPS it will be automatically enabled. If you have tinymce installed but don’t want to use it in the cms put the following in your settings.py:
CMS_USE_TINYMCE = False
Note
When using django-tinymce, you also need to configure it. See the django-tinymce docs for more information.
For installation be sure you have the following in your project’s INSTALLED_APPS setting:
INSTALLED_APPS = (
# ...
'cms.plugins.text',
# ...
)
Plays Video Files or Youtube / Vimeo Videos. Uses the OSFlashVideoPlayer. When uploading videos use either .flv files or h264 encoded video files.
For installation be sure you have the following in your project’s INSTALLED_APPS setting:
INSTALLED_APPS = (
# ...
'cms.plugins.video',
# ...
)
There are some settings you can set in your settings.py to overwrite some default behavior:
You should take care that the directory defined by the configuration setting CMS_PAGE_MEDIA_PATH (by default cms_page_media/ relative to MEDIA_ROOT) is writable by the user under which django will be running.
Note
For more advanced use cases where you would like to upload your media to a central location, consider using django-filer with django CMS plugin and its cmsplugin_filer_video component instead.
Display’s a number of a twitter user’s latest posts.
For installation be sure you have the following in your project’s INSTALLED_APPS setting:
INSTALLED_APPS = (
# ...
'cms.plugins.twitter',
# ...
)
Note
Since avatars are not guaranteed to be available over SSL (HTTPS), by default the Twitter plugin does not use avatars on secure sites.
Displays all plugins of another page or another language. Great if you always need the same plugins on a lot of pages.
For installation be sure you have the following in your project’s INSTALLED_APPS setting:
INSTALLED_APPS = (
# ...
'cms.plugins.inherit',
# ...
)
Warning
The inherit plugin is currently the only core-plugin which cannot be used in non-cms placeholders.