Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

11x-wagtail-blog

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

11x-wagtail-blog

11x Wagtail Blog

  • 0.2.0
  • Source
  • PyPI
  • Socket score

Maintainers
1

11x Wagtail Blog

|PyPI| |Build| |Supported Python versions| |Documentation| |Downloads|

11x Wagtail Blog

11x-wagtail-blog is a wagtail app implementing basic blog features for a wagtail site. This project started as an implementation of the blogging features of 11x.engineering, but since it is intended to be used as the first series of articles, it has been open sourced and published here. It is intended to demonstrate how to develop a fully featured package published to PyPI.

Quick Start

To install::

pip install 11x-wagtail-blog

Add x11x_wagtail_blog to your INSTALLED_APPS::

INSTALLED_APPS = [
    ...,
    'x11x_wagtail_blog',
    ...,
]

Since this package only gives you the common features of every blogging application, you will need to define your own page models and derive them from ExtensibleArticlePage::

from x11x_wagtail_blog.models import ExtensibleArticlePage from wagtail.admin.panels import FieldPanel from wagtail.blocks import TextBlock from wagtail.fields import StreamField

class MyArticlePage(ExtensibleArticlePage): ... body = StreamField([ ... ("text", TextBlock()), ... ], use_json_field=True) ... ... content_panels = ExtensibleArticlePage.with_body_panels([ ... FieldPanel("body"), ... ])

This can be done in any valid Wagtail app.

Next, generate your migrations as usual::

python manage.py makemigrations
python manage.py migrate

You will have to define a template. The default template used is x11x_wagtail_blog/article_page.html, but you should override the get_template() method to return your own template.

.. code-block:: html

<!DOCTYPE html>
<html>
  <head>...</head>
  <body>
    <h1>{{ self.title }}</h1>

    {% include_block self.body %}

    <h2>About the authors</h2>
    {% for author in self.authors %}
    {% include "myblog/about_the_author_section.html" with author=author.value %}
    {% endfor %}

    <h2>Related Articles</h2>
    <ul>
    {% for article in self.related_articles %}
    <li><a href="{% pageurl article %}">{{ article.title }}</a></li>
    {% endfor %}
    </ul>
  </body>
</html>

.. |PyPI| image:: https://img.shields.io/pypi/v/11x-wagtail-blog :target: https://pypi.org/project/11x-wagtail-blog/ .. |Build| image:: https://github.com/11x-engineering/11x-wagtail-blog/actions/workflows/package.yml/badge.svg :target: https://github.com/11x-engineering/11x-wagtail-blog/actions/workflows/package.yml .. |Supported Python versions| image:: https://img.shields.io/pypi/pyversions/11x-wagtail-blog.svg :target: https://pypi.org/project/11x-wagtail-blog/ .. |Documentation| image:: https://readthedocs.org/projects/11x-wagtail-blog/badge/?version=latest :target: https://11x-wagtail-blog.readthedocs.io/en/latest/?badge=latest .. |Downloads| image:: https://pepy.tech/badge/11x-wagtail-blog/month :target: https://pepy.tech/project/11x-wagtail-blog/

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc