Giter VIP home page Giter VIP logo

puput's Introduction

Puput

image

image

image

image

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.

image

Visit the documentation for an in-depth look at Puput.

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
  • Configurable default template color
  • Social share of blog entries (Facebook, Twitter and LinkedIn)
  • Markdown fields (https://github.com/torchbox/wagtail-markdown)

image

Examples of blog sites made with Puput

Setup

The setup process is explained here.

puput's People

Contributors

aaloy avatar ahwebd avatar avallbona avatar bashu avatar csalom avatar cvyy39 avatar deividvm avatar dependabot[bot] avatar dperetti avatar erm avatar flipperpa avatar hiroki-sawano avatar jhpg avatar jlmirocoll avatar jojolalpin avatar lanshark avatar linuxluigi avatar loren-jiang avatar marctc avatar michalpleszczynski avatar miltonln avatar misrax avatar nicklo avatar pieterdd avatar pyloons avatar rense avatar ritterasdf avatar sterago avatar xusy2k avatar yedpodtrzitko avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

puput's Issues

i18n support

Hi, how i18n is handled in pupput?

My blog has to be both in english and french. Is there a way to add a blog entry in 2 languages?

Thanks.

How to integrate with wagtail and create a web portal

Hello, I trying to integrate wagtail and puput to create a web cms portal.
As puput take control over cms, which it's the recommended way to integrate other pages, different from blog_page and entry_page?

Example:
I have a home with multiple tags (recent entries, popular entries, advertisement, ...) and header, footer, . . ., and need to create some menu entries , to new page models, etc.
Home -> puput blog_page
When I click over a post --> puput entry_page
New pages needed: forms, other page models, ...

Thx

Have a how to contrib

As this is originally prepared to be installed with pip, it would be nice to have small document file to explain how to setup a develpment enviroment to work on puput improvement without installing it, from source code.

rss feed uses Django site page instead of Wagtail site

I'm not sure when the Django site is set up, but it seems to default to "example.com".

When I add a new blog using the Wagtail admin, most of the links are setup correctly. However, when I go to the rss feed, all links listed in that feed use the Django site (in the django_site table) instead of the Wagtail site, so all links in the rss feed go to "example.com/blog/testing" or something like that, rather than, for example, "localhost:8000/blog/testing", as it should.

BASE_URL is set to "localhost:8000", if that matters.

PUPUT_USERNAME_FIELD

get_entries() in puput.models BlogPage raises an error.

def get_entries(self):
    field_name = 'owner__%s' % getattr(settings, 'PUPUT_USERNAME_FIELD', 'username')
    return EntryPage.objects.descendant_of(self).live().order_by('-date')#.select_related(field_name)

This results in select_related('owner__username') which is wrong and shoud be
select_related('owner')

Remove date from URL

I'd like to serve posts without the date in the URL. Something like:

    url(
        regex=r'^(?P<blog_slug>[-\w]+)/(?P<slug>[-\w]+)/$',
        view=EntryPageServe.as_view(),
        name='entry_age_serve_slug_only'
    )

I add this and adjust EntryPageServe and BlogRoutes etc but I keep getting a 404.

What am I missing? How can I get the URL to serve the matching Entry?

Thanks.

Canonical url

Someting useful for SEO reasons is having a field to add a cannonical url in case you are publishing a previoulsy posted text or something similar.

I would like to include this and other similar things in a SEO plugin / module or something, but I don't see the way because would need to add the relation field to the page model , right?

Header Image not saving

Saving 'normal' images (wagtailimages.Image) is no problem, but when i use
WAGTAILIMAGES_IMAGE_MODEL ("core.APPImage" - mine), I get the following error: "Select a
valid choice. That choice is not one of the available choices." The code originates from the
example, so there "shouldn't" be any syntax errors. Im using wagtail 1.5.3, with django 1.9.9.

Thanks in advance

Post-processing 'puput/css/bootstrap.min.css' failed!

whitenoise.django.MissingFileError: The file 'puput/fonts/glyphicons-halflings-regular.eot' could not be found with <whitenoise.django.GzipManifestStaticFilesS
torage object at 0x7fe8d263a470>.

puput/fonts/glyphicons-halflings-regular.eot is not in the puput static files.
Could you please fix this?

Produced feed is not valid when entry has header image

it seems that because of this method https://github.com/APSL/puput/blob/master/puput/feeds.py#L48

the produced RSS feed contains an enclosure element, which is invalid because it's lacking the length and type fields which are required (https://validator.w3.org/feed/docs/rss2.html)

To my understanding the enclosure element is only useful for media that has a length, e.g. audio or video, but not for images, therefore my proposed solution would be to remove this method altogether.

I can work on a PR if this sounds reasonable

Images url not defined?

Hi there, I just tried creating a new django project and configuring the Puput as standalone to work, but when I upload a image it points to a 404 url.
The images appear in the folders /images/ and also in the /original_images/ inside my project root dir.

I was searching for something on this and saw that there is this ^images/ url from Wagtail: http://docs.wagtail.io/en/v1.1/topics/images/using_images_outside_wagtail.html#setup that you need to add the your urls.py

And, after searching inside Puput urls.py I saw that in the case when you are not using Puput as a wagtail pluging, the images url is not added: https://github.com/APSL/puput/blob/master/puput/urls.py#L26

I'm not sure if the images url is another thing that has nothing to do with the Wagtail Images url, or if it's just missing from the puput.urls.py in the standalone config mode.

Puput hard requiring Django 1.8

$ pip install puput
...
  Found existing installation: Django 1.9.1
    Uninstalling Django-1.9.1:
      Successfully uninstalled Django-1.9.1
Successfully installed Django-1.8.9 
...

That doesn't seem right. :-)

Is there a reason for this?

Content panels display twice

I really don't understand this.

I'm doing the puput as a plugin method (which I've set in my config). I have an abstract entry class. If I set

class NewsPageAbstract(EntryAbstract):
    content_panels = []

on that abstract class, I still get all the fields in the admin.

If fill in content_panels, like so:

class NewsPageAbstract(EntryAbstract):
    content_panels = [
        MultiFieldPanel([
            FieldPanel('title', classname="title"),
            ImageChooserPanel('header_image'),
            StreamFieldPanel('body'),
            FieldPanel('excerpt', classname="full"),
        ], heading=_("Content")),
        MultiFieldPanel([
            FieldPanel('tags'),
            InlinePanel('entry_categories', label=_("Categories")),
            InlinePanel('related_entrypage_from', label=_("Related Entries")),
        ], heading=_("Metadata")),
    ]

Then everything appears twice.

I've been looking at the source code for a long time. I don't understand why it's doing this.

Add support for other comment systems

It would be interesting to have support for other comment systems like Facebook comments. Before that the following things are needed:

  • Remove tapioca-disqus from setup.py
  • Refactor EntryPageUpdateCommentsView to suport other comment systems
  • Refactor js code that update the number of comments of an entry.

installation flow in setup.rst

i followed the docs/setup.rst (after a virtualenv -p /usr/bin/python3 env; source ./env/bin/activate; pip install django; django-admin.py startproject demo) line by line. when doing the demo/manage.py migrate (and setting PROJECT_ROOT as requested) (and fixing the error django.core.exceptions.ImproperlyConfigured: COMPRESS_ROOT defaults to STATIC_ROOT, please define either) i get a:

 WARNINGS:
 ?: (1_8.W001) The standalone TEMPLATE_* settings were deprecated in Django 1.8 and the TEMPLATES dictionary takes precedence. You must put the values of the following settings into your default TEMPLATES dict: TEMPLATE_CONTEXT_PROCESSORS.

when requesting i get an error:

 AttributeError: 'WSGIRequest' object has no attribute 'user'

is the setup document uptodate and meant to work out of the box?

Dependencies on rcssmin and rjsmin, a problem on (64-bit) Windows

I don't actually expect too much sympathy here, but my install of puput on Windows with 64 bit python just failed trying to build the C extensions for rcssmin and rjsmin, error C++ compiler not found.
That's true. I don't have a 64-bit compiler installed right now.

Microsoft distributes 'express' and 'community' edition versions for free, but those are 32-bit only.

Sure, I could ratchet down Python to 32 bits, or muck around with MinGW or spend money on VS.

But if your dependency on the above packages is not too deep and you could allow puput to run (albeit with reduced performance) if they can't be imported, that would be great.

Otherwise, I'll be deferring my experience with puput to another day. And that's too bad, it looks pretty good...

Problem with wp2puput import

Thanks for the great work on puput. After getting the installation working for wp2puput, I'm running into an error on the import.

(pyphilly) [vagrant@vagrant pyphilly]$ ./manage.py wp2puput peregrinesalon.wordpress.2016-11-25.xml
usage: manage.py wp2puput [-h] [--version] [-v {0,1,2,3}]
                          [--settings SETTINGS] [--pythonpath PYTHONPATH]
                          [--traceback] [--no-color] [--slug SLUG]
                          [--title TITLE]
manage.py wp2puput: error: unrecognized arguments: peregrinesalon.wordpress.2016-11-25.xml

I've tried several different ways, but haven't dug any deeper into the code in case someone sees something obvious I'm missing.

wagtail user bar prevents scrolling

As the title states, whenever I am logged into the wagtail admin, and I'm looking at the blog I'm not allowed to scroll via mousewheel or arrowkeys. No problems if not logged in. could be a possible clash with my other js files

Puput Tags in Other App

I installed puput as a blog app. I also have a home app for my homepage. I'm trying to add a list of recent posts to the html of my homepage, similar to what is found in entries_list.html.

{% for entry in 'puput:entries' %} <ul class="style3"> <li><a href="{% pageurl entry %}">{{ entry.title }}</a></li> </ul> {% endfor %}

This is what I put into my html (I use pageurl because I use slug urls instead of the dates). I've added all of the proper tag loads at the top of homepage.html, I've tried other debugging. Can't seem to figure out why it won't work. I receive the attribute error: 'unicode' object has no attribute 'relative_url'.

Templates / themes system

This one looks more like a Wagtail improvement for me, but the current way to change the template is a little bit tricky.

If I understood well, you need to copy the whole puput folder and then change everything in the new folder.
Do you have any idea on a system to be able (for example) to create some Puput blog templates that could be installed by people who just want a blog?

Suggestion Add to document

First Thanks for the good blog app.
As recommendation, why don' you add this to setup - wagtail blog app section

"Add this to Installed_apps section"
'wagtail.contrib.wagtailsitemaps',
'wagtail.contrib.wagtailroutablepage',

because even though using wagtail, it isn't there by default. So We have to add them manually( I think :) )
Without them, I got errors that say " Wagtailroutablepage_tags error.."

If I am wrong, just ignore this.

Trying out Puput and getting server errors and 404's on localhost

http://dpaste.com/03N6HM3

You can see the errors I'm getting above. I'm able to access the blog_admin no problem but depending on what I click on, I seem to be getting random errors where nothing works until I re-run server. I also am not able to access /blog/. I continue to receive 404's:

Request URL:    http://127.0.0.1:8000/blog/
Raised by:  wagtail.wagtailcore.views.serve

Anyone have any idea on why I'm getting these things? Everything appears to be installed correctly. I followed the stand alone installation since I just wanted to add this to my existing install.

Can't override fields in EntryAbstract subclass

Mainly wanting to post this to link to django/django#5122 where the problem seems to be resolved. Django gets upset when you try to override a model field from a subclass. In my case, I want to override body from EntryAbstract in a subclass but I can't. There's no reason you shouldn't be able to, since the parent class is abstract. This makes the EntryAbstract class far less useful until the problem is fixed.

UnicodeDecodeError: 'ascii' codec can't decode...

Got this

Downloading/unpacking puput==0.3 (from -r /home/vagrant/bodytherapy/djangoapp/requirements/project.txt (line 16))
  Running setup.py (path:/home/vagrant/.virtualenv/build/puput/setup.py) egg_info for package puput
    Traceback (most recent call last):
      File "<string>", line 17, in <module>
      File "/home/vagrant/.virtualenv/build/puput/setup.py", line 35, in <module>
        version=get_version('puput'),
      File "/home/vagrant/.virtualenv/build/puput/setup.py", line 14, in get_version
        init_py = open(os.path.join(package, '__init__.py')).read()
      File "/home/vagrant/.virtualenv/lib/python3.4/encodings/ascii.py", line 26, in decode
        return codecs.ascii_decode(input, self.errors)[0]
    UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 49: ordinal not in range(128)
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):

  File "<string>", line 17, in <module>

  File "/home/vagrant/.virtualenv/build/puput/setup.py", line 35, in <module>

    version=get_version('puput'),

  File "/home/vagrant/.virtualenv/build/puput/setup.py", line 14, in get_version

    init_py = open(os.path.join(package, '__init__.py')).read()

  File "/home/vagrant/.virtualenv/lib/python3.4/encodings/ascii.py", line 26, in decode

    return codecs.ascii_decode(input, self.errors)[0]

UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 49: ordinal not in range(128)

PUPUT_ENTRY_MODEL=...

...
PUPUT_ENTRY_MODEL = 'blogger.EntryAbstract'
...

gave me this:

/home/vagrant/.virtualenv/lib/python3.4/importlib/_bootstrap.py:321: RemovedInDjango19Warning: django.utils.importlib will be removed in Django 1.9.
  return f(*args, **kwds)

Traceback (most recent call last):
  File "/home/vagrant/.virtualenv/bin/django-admin", line 11, in <module>
    sys.exit(execute_from_command_line())
  File "/home/vagrant/.virtualenv/lib/python3.4/site-packages/django/core/management/__init__.py", line 351, in execute_from_command_line
    utility.execute()
  File "/home/vagrant/.virtualenv/lib/python3.4/site-packages/django/core/management/__init__.py", line 325, in execute
    django.setup()
  File "/home/vagrant/.virtualenv/lib/python3.4/site-packages/django/__init__.py", line 18, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/home/vagrant/.virtualenv/lib/python3.4/site-packages/django/apps/registry.py", line 108, in populate
    app_config.import_models(all_models)
  File "/home/vagrant/.virtualenv/lib/python3.4/site-packages/django/apps/config.py", line 198, in import_models
    self.models_module = import_module(models_module_name)
  File "/home/vagrant/.virtualenv/lib/python3.4/importlib/__init__.py", line 109, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 2254, in _gcd_import
  File "<frozen importlib._bootstrap>", line 2237, in _find_and_load
  File "<frozen importlib._bootstrap>", line 2226, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1200, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1129, in _exec
  File "<frozen importlib._bootstrap>", line 1471, in exec_module
  File "<frozen importlib._bootstrap>", line 321, in _call_with_frames_removed
  File "/home/vagrant/.virtualenv/lib/python3.4/site-packages/puput/models.py", line 24, in <module>
    Entry = import_model(getattr(settings, 'PUPUT_ENTRY_MODEL', EntryAbstract))
  File "/home/vagrant/.virtualenv/lib/python3.4/site-packages/puput/utils.py", line 13, in import_model
    return getattr(import_module(package), attr)
AttributeError: 'module' object has no attribute 'EntryAbstract'

however

[bodytherapy djangoapp]$ python
Python 3.4.3 (default, Oct 14 2015, 20:28:29)
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from blogger import EntryAbstract
>>>

Allow to override content_panels...

I think easiest way is to cut this part and put it into abstract model

    content_panels = [
        MultiFieldPanel([
            FieldPanel('title', classname="title"),
            ImageChooserPanel('header_image'),
            FieldPanel('body', classname="full"),
            FieldPanel('excerpt', classname="full"),
        ], heading=_("Content")),
        MultiFieldPanel([
            FieldPanel('tags'),
            InlinePanel('entry_categories', label=_("Categories")),
            InlinePanel('related_entrypage_from', label=_("Related Entries")),
        ], heading=_("Metadata")),
    ]

Installing from git

Exception:
Traceback (most recent call last):
  File "/home/vagrant/.virtualenv/lib/python3.4/site-packages/pip/basecommand.py", line 122, in main
    status = self.run(options, args)
  File "/home/vagrant/.virtualenv/lib/python3.4/site-packages/pip/commands/install.py", line 278, in run
    requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
  File "/home/vagrant/.virtualenv/lib/python3.4/site-packages/pip/req.py", line 1197, in prepare_files
    do_download,
  File "/home/vagrant/.virtualenv/lib/python3.4/site-packages/pip/req.py", line 1375, in unpack_url
    self.session,
  File "/home/vagrant/.virtualenv/lib/python3.4/site-packages/pip/download.py", line 582, in unpack_http_url
    unpack_file(temp_location, location, content_type, link)
  File "/home/vagrant/.virtualenv/lib/python3.4/site-packages/pip/util.py", line 627, in unpack_file
    and is_svn_page(file_contents(filename))):
  File "/home/vagrant/.virtualenv/lib/python3.4/site-packages/pip/util.py", line 210, in file_contents
    return fp.read().decode('utf-8')
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x8b in position 1: invalid start byte

Substitute Category model

Hi,

is there anyway substitute the puput category model with a custom one?
I'm trying to install puput over an existing django project. All has gone very well, but my project already has his own category model that can't be substitute.

Best,

Fabio

puput and wagtail v1.7

Got TypeError exception

Traceback (most recent call last):
  File "example/manage.py", line 13, in <module>
    execute_from_command_line(sys.argv)
  File "/Users/bashu/.virtualenvs/example/lib/python2.7/site-packages/django/core/management/__init__.py", line 367, in execute_from_command_line
    utility.execute()
  File "/Users/bashu/.virtualenvs/example/lib/python2.7/site-packages/django/core/management/__init__.py", line 341, in execute
    django.setup()
  File "/Users/bashu/.virtualenvs/example/lib/python2.7/site-packages/django/__init__.py", line 27, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/Users/bashu/.virtualenvs/example/lib/python2.7/site-packages/django/apps/registry.py", line 108, in populate
    app_config.import_models(all_models)
  File "/Users/bashu/.virtualenvs/example/lib/python2.7/site-packages/django/apps/config.py", line 199, in import_models
    self.models_module = import_module(models_module_name)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
  File "/Users/bashu/.virtualenvs/example/lib/python2.7/site-packages/puput/models.py", line 157, in <module>
    class EntryPage(Page, Entry):
  File "/Users/bashu/.virtualenvs/example/lib/python2.7/site-packages/puput/models.py", line 162, in EntryPage
    index.FilterField('page_ptr_id')
TypeError: can only concatenate list (not "tuple") to list

author username

Hi Marc,

why I'm not able to to point to author page when the author name contains the "." or the "@"? This is the pattern I'm using for the author pages

@route(r'^author/(?P<author>[\w.@-]+)/$')

Regards,

Fabio

Body content as StreamField

Maybe the WordPress way is not the best way, but I think some of the WordPress options to create diferent kind of posts is a very good idea.

Something like
custom_post_types

What do you think about that. Is it too opinionated aproach?.
Should those be pluggins?

Add Travis CI integration

We need an stable CI suit to run build a project and run tests (work in progress).

  • Run a Django server
  • Add tox support
  • Run tests
  • Run flake8
  • Upload a package build to PyPI after pushing a new tag.

Create Entry bug

The ability to create an entry page without being in the blog subtree breaks the relative url in the base template.

To reproduce create a child page underneath the root page and click entry. Entryt should not show up until you are in the blog subtree. Though I may be wrong on that assumption.

puput, django-el-pagination and django 1.10.x

I got this

Traceback (most recent call last):
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/core/handlers/exception.py", line 39, in inner
    response = get_response(request)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/core/handlers/base.py", line 249, in _legacy_get_response
    response = self._get_response(request)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/core/handlers/base.py", line 217, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/core/handlers/base.py", line 215, in _get_response
    response = response.render()
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/template/response.py", line 109, in render
    self.content = self.rendered_content
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/template/response.py", line 86, in rendered_content
    content = template.render(context, self._request)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/template/backends/django.py", line 66, in render
    return self.template.render(context)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/template/base.py", line 208, in render
    return self._render(context)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/template/base.py", line 199, in _render
    return self.nodelist.render(context)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/template/base.py", line 994, in render
    bit = node.render_annotated(context)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/template/base.py", line 961, in render_annotated
    return self.render(context)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/template/loader_tags.py", line 174, in render
    return compiled_parent._render(context)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/template/base.py", line 199, in _render
    return self.nodelist.render(context)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/template/base.py", line 994, in render
    bit = node.render_annotated(context)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/template/base.py", line 961, in render_annotated
    return self.render(context)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/template/loader_tags.py", line 70, in render
    result = block.nodelist.render(context)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/template/base.py", line 994, in render
    bit = node.render_annotated(context)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/template/base.py", line 961, in render_annotated
    return self.render(context)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/template/defaulttags.py", line 510, in render
    return self.nodelist.render(context)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/template/base.py", line 994, in render
    bit = node.render_annotated(context)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/template/base.py", line 961, in render_annotated
    return self.render(context)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/el_pagination/templatetags/el_pagination_tags.py", line 311, in render
    page = paginator.page(page_number)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/el_pagination/paginators.py", line 58, in page
    number = self.validate_number(number)
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/django/core/paginator.py", line 39, in validate_number
    if number > self.num_pages:
  File "/Users/bashu/.virtualenvs/metadata/lib/python2.7/site-packages/el_pagination/paginators.py", line 69, in _get_num_pages
    if self._num_pages is None:
AttributeError: 'DefaultPaginator' object has no attribute '_num_pages'

Custom JS includes

I will work on this one as we talked, but put it here to have it tracked in the main repo if you are planning to include it in core.

The idea behind this is leaving blog admins to include JS code with is not hard-coded in templates like analytics or other tracking code.

Post-processing 'puput/css/style.css' failed!

       Post-processing 'puput/css/style.css' failed!
       Traceback (most recent call last):
       whitenoise.django.MissingFileError: The file 'puput/images/banner.jpg' could not be found with <whitenoise.django.GzipManifestStaticFilesStorage object at 0x7f756885c0b8>.
       The CSS file 'puput/css/style.css' references a file which could not be found:
       Please check the URL references in this CSS file, particularly any
       relative paths which might be pointing to the wrong location.

Possible roadmap

I have some ideas about things that could be added like some custom post types such as video, picture ... etc (somehow a WordPress style) and not sure if those thing should be suggested as pull requests here in this repo or just developed as Wagtail or Puput addons.

Do you have some kind of future roadmap or public discussion so people can contribute to the project?.
And if so ... how to add them according to the current default theme.

Thanks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.