Skip to content
/ puput Public
forked from APSL/puput

A Django blog app implemented in Wagtail

License

Notifications You must be signed in to change notification settings

arruda/puput

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

79 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Documentation Status

Puput

Puput is a powerful and simple Django app to manage a blog. It uses the awesome Wagtail CMS as content management system.

Puput is the catalan name for Hoopoe which is indeed a beautiful bird.

http://i.imgur.com/ndZLeWb.png

Features

  • Built with Wagtail CMS and Django
  • Inspired in Wordpress and Zinnia
  • Simple & responsive HTML template by default
  • SEO friendly urls
  • Support for Disqus comments
  • Entries by author, tags, categories, archives and search term
  • Last & popular entries
  • Configurable sidebar widgets
  • RSS feeds
  • Related entries
  • Extensible entry model

Setup

If you have a running Django project and you want to add blog site to your project, please follow Standalone blog app steps. Otherwise follow the Wagtail blog app steps if you are currently using Wagtail on your project.

Standalone blog app

  1. Install Puput and its dependencies pip install puput
  2. Add to PUPUT_APPS to your INSTALLED_APPS in settings.py file.
from puput import PUPUT_APPS

INSTALLED_APPS += PUPUT_APPS

This includes Puput, Wagtail apps and Third party apps. If you have on of these apps previously defined in your INSTALLED_APPS please include manually this apps in order to avoid apps collisions:

INSTALLED_APPS = (
    ...
    'wagtail.wagtailcore',
    'wagtail.wagtailadmin',
    'wagtail.wagtaildocs',
    'wagtail.wagtailsnippets',
    'wagtail.wagtailusers',
    'wagtail.wagtailimages',
    'wagtail.wagtailembeds',
    'wagtail.wagtailsearch',
    'wagtail.wagtailsites',
    'wagtail.wagtailredirects',
    'wagtail.wagtailforms',
    'wagtail.contrib.wagtailsitemaps',
    'wagtail.contrib.wagtailroutablepage',
    'compressor',
    'taggit',
    'modelcluster',
    'puput',
)
  1. Add Wagtail required middleware classes in settings.py file
MIDDLEWARE_CLASSES = (
    ...
    'wagtail.wagtailcore.middleware.SiteMiddleware',
    'wagtail.wagtailredirects.middleware.RedirectMiddleware',
)
  1. Add request context processor to TEMPLATE_CONTEXT_PROCESSORS structure in settings.py file
TEMPLATE_CONTEXT_PROCESSORS = (
    ...
    'django.core.context_processors.request',
)
  1. Set WAGTAIL_SITE_NAME variable in settings.py file with your site name:
WAGTAIL_SITE_NAME = 'Puput blog'
  1. Place Puput urls at the bottom of the urlpatterns. It also includes Wagtail urls.
urlpatterns = [
    ...
    url(r'', include('puput.urls')),
]
  1. Run python manage.py migrate and python manage.py puput_initial_data to load initial data to start a blog site.
  2. Open your broswer at http://127.0.0.1:8000/blog/ to view your blog home page. Go to http://127.0.0.1:8000/blog_admin/ to view the admin site and edit your content.

Wagtail blog app

  1. Install Puput and its dependencies pip install puput
  2. Add puput to your INSTALLED_APPS in settings.py file.
  3. If you have previously defined Wagtail urls in urls.py set PUPUT_AS_PLUGIN = True in the settings.py. This will avoid to include Wagtail urls again when you include necessary Puput urls.
  4. Include Puput urls in your urls.py file.
urlpatterns = [
    ...
    url(r'', include('puput.urls')),
    ...
]
  1. Run python manage.py migrate

Documentation

Visit Puput documentation for the detailed documentation.

About

A Django blog app implemented in Wagtail

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 42.2%
  • CSS 33.7%
  • HTML 19.2%
  • JavaScript 4.9%