Как показать ссылки на следующую и предыдущую страницы в Django-CMS - PullRequest
3 голосов
/ 18 апреля 2011

У нас есть сайт, созданный в Django-CMS, и мы разработали мобильную версию с альтернативным CSS, чтобы удовлетворить меньшую область просмотра.Как и в обычной панели навигации, мы хотим включить ссылки на следующую и предыдущую страницы внизу каждой страницы.

Я знаю, как вывести братьев и сестер на текущей странице, используя этот код:

{% show_menu current_page.level %}

Какой самый простой способ вывести ссылки на следующую и предыдущую страницу?

Ответы [ 2 ]

5 голосов
/ 19 апреля 2011

Вы можете использовать {{ request.current_page.get_next_sibling }} и {{ request.current_page.get_previous_sibling }} в своих шаблонах, чтобы показать «соседние» страницы (не то, что либо, либо b

0 голосов
/ 05 июня 2015

Вы можете использовать методы get_next_filtered_sibling и get_previous_filtered_sibling - но, вероятно, только для более новых версий django cms.

Вот два тега шаблона, которые возвращают объекты страницы, которые вы, возможно, захотите передать в{% page_url ... %} шаблон тега.

@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
    )
...