3 Stimmen

Wie man Links zur nächsten und vorherigen Seite in Django-CMS anzeigt

Wir haben eine Website in Django-CMS erstellt und eine mobile Version mit alternativem CSS entwickelt, um dem kleineren Anzeigebereich gerecht zu werden. Neben der üblichen Navigationsleiste möchten wir am unteren Rand jeder Seite Links zur nächsten und vorherigen Seite einfügen.

Ich weiß, wie ich mit diesem Code die Geschwister der aktuellen Seite ausgeben kann:

{% show_menu current_page.level %}

Wie kann man am einfachsten Links zur nächsten und vorherigen Seite ausgeben?

5voto

ojii Punkte 4644

Sie können verwenden {{ request.current_page.get_next_sibling }} y {{ request.current_page.get_previous_sibling }} in Ihren Vorlagen, um die "Nachbarseiten" anzuzeigen (nicht, dass entweder oder b

0voto

Philipp Zedler Punkte 1610

Sie können die folgenden Methoden verwenden get_next_filtered_sibling y get_previous_filtered_sibling - aber wahrscheinlich nur für neuere Versionen des django cms.

Hier sind zwei Template-Tags, die Seitenobjekte zurückgeben, die Sie vielleicht in die {% page_url ... %} Vorlage-Tag.

@register.assignment_tag(takes_context=True)
def get_next_page(context):
    current_page = context['request'].current_page
    return current_page.get_next_filtered_sibling(
        publisher_is_draft=False
    )

@register.assignment_tag(takes_context=True)
def get_prev_page(context):
    current_page = context['request'].current_page
    return current_page.get_previous_filtered_sibling(
        publisher_is_draft=False
    )

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X