Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/UWKM/uwkm_streamfields

A basic set of Wagtail Streamfields for fun and profit
https://github.com/UWKM/uwkm_streamfields

Last synced: 3 months ago
JSON representation

A basic set of Wagtail Streamfields for fun and profit

Awesome Lists containing this project

README

        

UWKM WAGTAIL STREAMFIELDS
=========================

This is a set of pre-defined streamfields for Wagtail. It provides:

- accordions
- background image with text overlay
- buttons
- call to action buttons
- colored block
- divider
- image gallery
- bootstrap grid
- header
- icon blocks
- image blocks
- quotation lists
- raw html block
- slider
- slogans
- tabs
- tables
- text fields
- youtube video blocks

This packages comes with a set of html templates, which you might want to tweak
or modify.

Installing uwkm_streamfields
============================

1. Install the package using pip: `pip install uwkm_streamfields`.
2. Add `wagtail.contrib.table_block` to `INSTALLED_APPS` in your project settings.
3. Add `uwkm_streamfields` to `INSTALLED_APPS` in your project settings.
4. Add `from uwkm_streamfields.settings.base import *` to your project settings.
5. Add import `from uwkm_streamfields.blocks import GridBlock` to your project models.
6. Use the `GridBlock` as such:

models.py
::
class SomePage(Page):
some_content = StreamField(
[('fixed_width', blocks.ListBlock(
GridBlock(),
template = 'streamfields/fixed_grid.html',
icon='fa-th-large',
label='Boxed'))
,('full_width', blocks.ListBlock(
GridBlock(),
template = 'streamfields/full_grid.html',
icon='fa-th',
label='Full'))
],
null = True,
blank = True
)

content_panels = Page.content_panels + [
StreamFieldPanel('some_content'),
]

7. Use `some_content` as such:

somepage.html
::
{% for block in page.some_content %}
{{ block }}
{% endfor %}

8. Change the settings as you like:

settings.py
::
BS_SIZE = 'sm'
STREAMFIELDS = '__all__'
EXCLUDE_STREAMFIELDS = []

9. Make sure you atleast have the following javascripts/stylesheets in your base.html

base.html
::
{# Global stylesheets #}




{# Global javascript #}









10. Extra:

add to templates/wagtailadmin/admin_base.html (if overridden)
::
{% block css %}
...

{% endblock %}

{% block js %}
...
var collapse = '{{ settings.uwkm_streamfields.streamfieldssettings.collapse_streamfields }}' == 'True';


...
{% endblock %}

UWKM, 2017