UWKM WAGTAIL STREAMFIELDS
November 1, 2017 ยท View on GitHub
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
- Install the package using pip:
pip install uwkm_streamfields. - Add
wagtail.contrib.table_blocktoINSTALLED_APPSin your project settings. - Add
uwkm_streamfieldstoINSTALLED_APPSin your project settings. - Add
from uwkm_streamfields.settings.base import *to your project settings. - Add import
from uwkm_streamfields.blocks import GridBlockto your project models. - Use the
GridBlockas 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 %}
- Change the settings as you like:
settings.py :: BS_SIZE = 'sm' STREAMFIELDS = 'all' EXCLUDE_STREAMFIELDS = []
- Make sure you atleast have the following javascripts/stylesheets in your base.html
base.html :: {# Global stylesheets #}
{# Global javascript #}
<script type="text/javascript" src="{% static 'js/jquery-2.2.3.min.js' %}"></script>
<script type="text/javascript" src="{% static 'js/bootstrap.min.js' %}"></script>
<script type="text/javascript" src="{% static 'js/isotope.min.js' %}"></script>
<script type="text/javascript" src="{% static 'js/owl.carousel.min.js' %}"></script>
<script type="text/javascript" src="{% static 'js/magnific-popup.min.js' %}"></script>
<script type="text/javascript" src="{% static 'js/revolution.min.js' %}"></script>
<script type="text/javascript" src="{% static 'js/tools.min.js' %}"></script>
<script type="text/javascript" src="{% static 'js/revolution_slider.min.js' %}"></script>
<script type="text/javascript" src="{% static 'js/slick.min.js' %}"></script>
<script type="text/javascript" src="{% static 'js/custom.js' %}"></script>
10. Extra:
add to templates/wagtailadmin/admin_base.html (if overridden) :: {% block css %} ... {% endblock %}
{% block js %}
...
<script type="text/javascript">var collapse = '{{ settings.uwkm_streamfields.streamfieldssettings.collapse_streamfields }}' == 'True';</script>
<script src="{% static 'js/custom-admin.js' %}"></script>
<script src="{% static 'js/colorPicker.js' %}"></script>
...
{% endblock %}
UWKM, 2017