django-dynamic-breadcrumbs

A Django app to generate HTML breadcrumbs dynamically from URL path


Keywords
django, breadcrumbs, breadcrumb, breadcrumb-navigation, breadcrumbs-dynamic
License
MIT
Install
pip install django-dynamic-breadcrumbs==0.4.3

Documentation

django-dynamic-breadcrumbs

Django CI Coverage Status PyPI version Code style: black Downloads Documentation Status

django-dynamic-breadcrumbs is a Django app to generate HTML breadcrumbs dynamically from URL paths.

At https://example.com/reference/instrument/guitar/, shows: Home > Reference > Instrument > Guitar.

Quick start

1. Install

pip install django-dynamic-breadcrumbs

2. Add to settings

Add "dynamic_breadcrumbs" label to your INSTALLED_APPS settings:

INSTALLED_APPS = [
    ...
    'dynamic_breadcrumbs',
]

Add dynamic_breadcrumbs.context_processors.breadcrumbs to context_processors:

TEMPLATES = [
    {
        "BACKEND": "django.template.backends.django.DjangoTemplates",
        "DIRS": [os.path.join(BASE_DIR, "templates")],
        "APP_DIRS": True,
        "OPTIONS": {
            "context_processors": [
				#...
                "dynamic_breadcrumbs.context_processors.breadcrumbs",
            ],
        },
    },
]

3. Add template

Include the dynamic_breadcrumbs/breadcrumbs.html in your base template.

{% if breadcrumbs %}
<div class="container">
    {% include "dynamic_breadcrumbs/breadcrumbs.html" with breadcrumbs=breadcrumbs%}
</div>
{% endif %}

Now each time you visit a page which makes use of the above template, it will have the breadcrumbs generated from the URL path.

4. (Optional) Customization

Tweak default settings.

Documentation

Full docs at: https://django-dynamic-breadcrumbs.readthedocs.io/

License

MIT