Skip to content

b-dev/django-newsletter-form

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Django Newsletter Form

Integrate a simple newsletter form to subscribe users to Mailchimp.

Quick start

  1. Install the package:

    pip install django-newsletter-form
  2. Add "newsletter_form" to your INSTALLED_APPS setting like this:

    INSTALLED_APPS = [
        ...
        'newsletter_form',
    ]
  3. Include the polls URLconf in your project urls.py like this:

    url(r'^newsletter/', include('newsletter_form.urls')),
  4. Run python manage.py migrate to create the newsletter form models.
  5. Set the Mailchimp data:

    NEWSLETTER_FORM_MAILCHIMP_USERNAME = ''
    NEWSLETTER_FORM_MAILCHIMP_API_KEY = ''
    NEWSLETTER_FORM_MAILCHIMP_LIST_ID = ''
  6. Include the css and js in your base template:

    <link href="{% static "newsletter_form/css/newsletter_form.css" %}" rel="stylesheet">
    
    {# Must be included after jQuery script #}
    <script src="{% static "newsletter_form/js/newsletter_form.js" %}"></script>
  7. Load the newsletter_form tag and include the form tag:

    {% load newsletter_form_tags %}
    {% newsletter_form %}
  8. Options you can customize:

    NEWSLETTER_FORM_SEND_WELCOME_MAIL = getattr(settings, 'NEWSLETTER_FORM_SEND_WELCOME_MAIL', False)
    
    NEWSLETTER_FORM_BUTTON_SUBSCRIBE_TEXT_SENDING = getattr(settings, 'NEWSLETTER_FORM_BUTTON_SUBSCRIBE_TEXT_SENDING',
                                                            _("Send..."))
    
    NEWSLETTER_FORM_BUTTON_SUBSCRIBE_TEXT = getattr(settings, 'NEWSLETTER_FORM_BUTTON_SUBSCRIBE_TEXT',
                                                    _("SUBSCRIBE"))
    
    NEWSLETTER_FORM_TITLE_MODAL_ERROR_DIALOG = getattr(settings, 'NEWSLETTER_FORM_TITLE_MODAL_ERROR_DIALOG',
                                                       _("Subscription failed"))
    NEWSLETTER_FORM_ERROR_MESSAGE = getattr(settings, 'NEWSLETTER_FORM_ERROR_MESSAGE',
                                            _(u"Error during the subscription process. Administrator are already informed"))
    
    NEWSLETTER_FORM_TITLE_MODAL_SUCCESS_DIALOG = getattr(settings, 'NEWSLETTER_FORM_TITLE_MODAL_SUCCESS_DIALOG',
                                                         _("Subscription confirmed"))
    NEWSLETTER_FORM_CONFIRM_SUBSCRIBE_MESSAGE = getattr(settings, 'NEWSLETTER_FORM_CONFIRM_SUBSCRIBE_MESSAGE',
                                                        _(u"Great! From now you'll receive our newsletter!"))
    
    NEWSLETTER_FORM_MAIL_SUBJECT_ISCRIZIONE_CONFERMATA = getattr(settings, 'NEWSLETTER_FORM_MAIL_SUBJECT_ISCRIZIONE_CONFERMATA',
                                                                 _("Subscription to our newsletter confirmed!"))
    
    NEWSLETTER_FORM_INVALID_EMAIL_MESSAGE = getattr(settings, 'NEWSLETTER_FORM_INVALID_EMAIL_MESSAGE',
                                                    _(u"Insert a valid email address"))
    NEWSLETTER_FORM_ALREADY_SUBSCRIBE_MESSAGE = getattr(settings, 'NEWSLETTER_FORM_ALREADY_SUBSCRIBE_MESSAGE',
                                                        _(u"You're already subscribed to our newsletter"))
    
    NEWSLETTER_FORM_MAILCHIMP_USERNAME = getattr(settings, 'NEWSLETTER_FORM_MAILCHIMP_USERNAME', '')
    NEWSLETTER_FORM_MAILCHIMP_API_KEY = getattr(settings, 'NEWSLETTER_FORM_MAILCHIMP_API_KEY', '')
    NEWSLETTER_FORM_MAILCHIMP_LIST_ID = getattr(settings, 'NEWSLETTER_FORM_MAILCHIMP_LIST_ID', '')
    
    NEWSLETTER_FORM_MANAGE_FIRST_NAME = getattr(settings, 'NEWSLETTER_FORM_MANAGE_FIRST_NAME', False)
    NEWSLETTER_FORM_MANAGE_LAST_NAME = getattr(settings, 'NEWSLETTER_FORM_MANAGE_LAST_NAME', False)
    
    # MANAGED ONLY IF NEWSLETTER_FORM_MANAGE_FIRST_NAME = True
    NEWSLETTER_FORM_FIRST_NAME_MANDATORY = getattr(settings, 'NEWSLETTER_FORM_FIRST_NAME_MANDATORY', True)
    
    # MANAGED ONLY IF NEWSLETTER_FORM_MANAGE_LAST_NAME = True
    NEWSLETTER_FORM_LAST_NAME_MANDATORY = getattr(settings, 'NEWSLETTER_FORM_LAST_NAME_MANDATORY', True)

About

Simple Django newsletter form for Mailchimp

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published