可扩展的带有垃圾邮件保护和i18n功能的Django CMS联系人表单插件
项目描述
带有垃圾邮件保护和i18n的Django CMS联系人表单插件。
网站用户输入的消息会被转换为电子邮件,发送到为特定插件实例配置的电子邮件地址。
垃圾邮件保护由ReCAPTCHA(免费)或Akismet(个人使用免费)提供。访问相应网站以获取激活所需保护方法的密钥。
依赖项
Python库
如果您决定使用ReCAPTCHA垃圾邮件保护方法,则需要安装python库recaptcha-client(在Debian中的包名为python-recaptcha)。
如果您使用Akismet进行垃圾邮件保护,则需要akismet。您还需要在django管理后台的“站点”部分设置您的域名url。
对于 Python 版本 <2.7,需要安装 importlib,因为在 Python 2.7 中 importlib 属于标准库,但在旧版本中是第三方包。
所有库都可以通过 pip 或 easy_install 安装。
推荐使用 South,但不是必需的。同样,它可以通过 pip 或 easy_install 容易地安装。
安装
下载
从 PyPI
您可以在终端中简单地输入 pip install cmsplugin-contact 或 easy_install cmsplugin-contact。
手动
您可以从 GitHub 下载最新开发版本的 zip 存档。解压下载的文件。然后在您的终端中 cd 进入解压后的文件夹。然后在终端中输入 python setup.py install。
设置
将 'cmsplugin_contact' 放入 settings.py 中的 INSTALLED_APPS 部分。别忘了同步数据库或迁移,如果您使用 South 的话。
将 'cmsplugin_contact.middleware.ForceResponseMiddleware' 放入 settings.py 中的 MIDDLEWARE_CLASSES 部分。
设置
DEFAULT_FROM_EMAIL
用于发送消息的电子邮件地址从 DEFAULT_FROM_EMAIL Django 设置 中获取。此外,Reply-To: 报头被设置为用户提供的电子邮件地址。
使用用户提供的地址设置电子邮件的 From: 报头目前不支持。这是因为许多服务器会拒绝使用未在该服务器上注册的 From: 地址的电子邮件。一些服务器也可能删除 Reply-To: 报头。因此,用户提供的电子邮件地址也添加到了消息正文中。
RECAPTCHA_PUBLIC_KEY 和 RECAPTCHA_PRIVATE_KEY
如果您不想在管理界面中输入 ReCATPCHA 密钥,您可以通过这些设置提供它们。
CMSPLUGIN_CONTACT_FORMS
默认
( ('cmsplugin_contact.forms.ContactForm', _('default')), )
您可以使用您自定义的 ContactForm,只需添加一个包含类路径和用于向用户显示的漂亮名称的新元组。
如果您想使用默认 ContactForm,可以在设置中这样做
( ('cmsplugin_contact.forms.ContactForm', _('default')), ('my_app.forms.MyContactForm', _('My form')), )
在您的自定义表单中,您可以设置您想要使用的模板,如下所示
class MyContactForm(Form): ... template = 'path/to/my_contact_template.html'
编辑器
默认编辑器是 WYMEditor,类似于 Django CMS。插件尊重 Django CMS 的 USE_TINYMCE 设置。有关如何使用 TinyMCE 的更多信息,请参阅 Django CMS 文档。如果您的 INSTALLES_APPS 中有 'djangocms_text_ckeditor' 包,则使用 CKEditor。
扩展
请参阅 examples/cmsplugin_custom_contact 了解如何子类化 cmsplugin_contact 并添加自定义字段。您可以覆盖子类化 ContactPlugin 的属性并使用您自己的模板和类。
信号
邮件发送
在发送联系邮件后,会触发一个信号。您可以使用它如下
from django.dispatch import receiver from cmsplugin_contact.cms_plugins import email_sent @receiver(email_sent) def handle_signal(sender, **kwargs): print kwargs['data']
项目详情
cmsplugin-contact-1.1.3.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f271fdac8bb76faf8ecd2bc7985fefb4cb18770596b9f4e47537e474d57163fd |
|
MD5 | a634dccc11defe84a4c2452ff67c948b |
|
BLAKE2b-256 | f1ff6555e62d34a00c46503b3f8aed19faf9fe24f3cbd274c1137d69031b65eb |