Да, есть хук, называемый construct_page_chooser_queryset
, который позволяет изменять результаты pages
, отображаемые в модале выбора страниц.
Пример кода
Это будет в вашем файле wagtal_hooks.py
, пример на основе документов, связанных выше.
from wagtail.core import hooks
@hooks.register('construct_page_chooser_queryset')
def order_pages_in_chooser(pages, request):
if "choose-page" in request.path:
# showing page in a page chooser modal
return pages.order_by('?') # order randomly
# search results shown in admin/pages/search - return in default order
return pages