from django.core.urlresolvers import resolve, translate_url @register.simple_tag(takes_context=True) def change_language(context, lang=None, *args, **kwargs): path = context['request'].path return translate_url(path,lang) {% get_language_info_list for LANGUAGES as languages %} {% for language in languages %} {{ language.name_local }} {% endfor %}