Skip to main content

News / blog plugin for the Wagtail CMS, but with news items belonging to collections, enforcing permissions

Project description

===========
wagtailnews
===========

A fork of the wagtailnews_ plugin for Wagtail that provides news / blogging functionality. This fork exists to allow news items to belong to a collection, enforcing collection permissions and restrictions (including viewer restrictions, mirroring the ``Page`` queryset's ``public()`` method and restricting unauthorized serving in the same way). This is done to facilitate wagtailnews working with the wagtailapproval_ plugin.

Installing
==========

Install using pip::

pip install wagtailnews-collection

It works with Wagtail 1.4 and upwards.

Documentation
=============

`Documentation for Wagtail news <http://wagtail-news.readthedocs.org>`_ can be found on Read The Docs. This fork has no specific documentation, as it works almost exactly the same.

Quick start
===========

Create news models for your application that inherit from the relevant ``wagtailnews`` models:

.. code:: python

from django.db import models

from wagtail.wagtailadmin.edit_handlers import FieldPanel
from wagtail.wagtailcore.fields import RichTextField
from wagtail.wagtailcore.models import Page

from wagtailnews.models import NewsIndexMixin, AbstractNewsItem, AbstractNewsItemRevision
from wagtailnews.decorators import newsindex


# The decorator registers this model as a news index
@newsindex
class NewsIndex(NewsIndexMixin, Page):
# Add extra fields here, as in a normal Wagtail Page class, if required
newsitem_model = 'NewsItem'


class NewsItem(AbstractNewsItem):
# NewsItem is a normal Django model, *not* a Wagtail Page.
# Add any fields required for your page.
# It already has ``date`` field, and a link to its parent ``NewsIndex`` Page
title = models.CharField(max_length=255)
body = RichTextField()

panels = [
FieldPanel('title', classname='full title'),
FieldPanel('body', classname='full'),
] + AbstractNewsItem.panels

def __str__(self):
return self.title


class NewsItemRevision(AbstractNewsItemRevision):
newsitem = models.ForeignKey(NewsItem, related_name='revisions')

. _wagtailnews: https://github.com/takeflight/wagtailnews
. _wagtailapproval: https://github.com/absperf/wagtailapproval

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

wagtailnews_collection-0.17.0-py2-none-any.whl (30.9 kB view details)

Uploaded Python 2

File details

Details for the file wagtailnews_collection-0.17.0-py2-none-any.whl.

File metadata

File hashes

Hashes for wagtailnews_collection-0.17.0-py2-none-any.whl
Algorithm Hash digest
SHA256 fb276da6b5e294abafa475ddf3872dae8734e4e17efb6862574260d0c37fd092
MD5 77f7893ec6d53257757e1dee9c0a083d
BLAKE2b-256 e12459515a9789b9c412dceb57391fd274be42cb2999739d4b3f805db2a2d7c2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page