@register.simple_tag(takes_context=True) def value_if_active(context, return_value, view_names): """ {% value_if_active 'contacts' 'class="active" %} {% value_if_active 'contacts contacts/about' 'class="active" %} {% value_if_active 'contacts*' 'class="active" %} - glob syntax """ request = context['request'] try: view_name = resolve(request.path).view_name for vn in view_names.split(): if fnmatch(view_name, vn): return return_value except Http404: return '' return ''