Skip to main content
Help us improve Python packaging – donate today!

A django CMS plugin to dynamically create contact forms.

Project Description

# About cmsplugin_contact_plus

[cmsplugin_contact_plus]( lets your build forms for your django CMS project
with exactly the fields you want in the order you want with a minimal effort.

Beside the regular input fields, there are "auto" fields, for example to submit the referral page or additional, hidden values.
The form will be submitted to a per form defined email address. This allows to cover a lot of
use cases with a single and simple cmsplugin.

cmsplugin_contact_plus is licensed under The MIT License.

## Quickstart

1. To install from [PyPI](, in your virtualenv run

pip install cmsplugin_contact_plus

or to get the latest commit from GitHub

pip install -e git+git://

2. Put ``cmsplugin_contact_plus`` in your INSTALLED_APPS section and verify that [ADMINS]( is defined as well.

3. Don't forget to syncdb your database.

## Configuration/Settings

Specify ``DEFAULT_FROM_EMAIL`` ( in your projects settings to send emails from a specific address. Otherwise Django's default 'webmaster@localhost' will be used.

## Templates

Do not forget to add ``'django.template.loaders.app_directories.Loader'`` to ``TEMPLATE_LOADERS`` in your

## TODO and planned features
- Save send data to a NoSQL database (eg. MongoDB).
- Add/Update dependencies to
- Widget support for each field.
- Provide examples and real life case studies
- Formatted email messages, HTML?, .as_p, ?
- Optional captcha support
- Allow to reuse forms on different pages.
- Migrations!!

## Changelog
### development
Please have a look at the latest commits for the work-in-progress-development version.

### 1.1.7

- django-cms 3.0 caching compatibility.

### 1.1.6

- Bugfix, missing template info,

### 1.1.5

- Trigger a signal ``contact_message_sent`` when a message was send successfully. See .
- Multiple templates support, in your project settings define

('cmsplugin_contact_plus/contact.html', 'contact.html'),
('cmsplugin_contact_plus/hello.html', 'hello.html'),
# more templates here

To be able to use the new features, please migrate manually

``` ALTER TABLE `cmsplugin_contactplus` ADD `template` varchar(255) NOT NULL AFTER `submit`; ```

### 1.1.4

- Packaging was modified for PyPI.
- Upload script for PyPI. Internal note: just execute ``./``.

### 1.1.3
- Better readability in email.

### 1.1.2
- Patch version for PyPI with corrected, see issue #4.

### 1.1.1
- Added include for templates im, fixes issue #4.

### 1.1.0
- Generic Query parameter (GET key) to hidden field. Use this in attach additional hidden data to the form. The slugified label is used for key lookup in the GET parameters. Eg.:
label is 'Favorite Color', than the lookup in the URL is done based on 'favorite-color', in will pass {..., u'favorite-color':'blue', ...} to the email.

### 1.0.4
- Fixed default "from email address" in case ``ADMINS`` is not defined in ````. (Issue #2)
- Fixed typos and added translation markers.

### 1.0.3
- Improoved Documentation
- Added ``auto_TextArea`` shortcut to create a TextArea. Note: Currently the widget definde in the plugins are ignored.
- Hidden "referral page" field. Reads referral from request.
- Generic Hidden fields. Use this in combination with JavaScript/jQuery to attach additional data to the form sent by email.

For exmple, the field lable for the 'CharField as HiddenInput' is named to "Object description".
Using the lable name, the ID for the input field will be 'id_object-description', the name 'object-description'.

Store data is dead easy using jQuery.

$('#id_object-description').val('Hello Hidden World'); // The string 'Hello Hidden World' will be send by email as well.

### 1.0.2
Fixed indentation /EOF in

### 1.0.1
Fixed IndentationError in

### 1.0.0
[arteria]( open sourced cmsplugin_contact_plus unter the MIT License. This plugin was build on a fork of [cmsplugin_contact]( Kudos!

Release history Release notifications

History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


This version
History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
cmsplugin_contact_plus-1.1.7.tar.gz (7.7 kB) Copy SHA256 hash SHA256 Source None Jun 22, 2014

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page