Fixes#11938
* Add `wagtail start` to the management commands reference
* Add detail on how to creating templates with the need to escape template syntax by using the verbatim tag
- Move model reference to directly under the references section, not the reference/pages section
- Move panel reference to directly under the references section, not the reference/pages section
- Merge panel API with panels reference pages
- Fix confusing heading levels in the page model recipes page
- Fix title in model reference to align with docs style guide
- Adopt US spelling for customize (panels) reference key
However, leave behind notes that mark settings/features that are deprecated but not yet removed, as this would be removing information that isn't in the main body of the text (and moving it out of a versionchanged note would make it harder to find when we come to remove it properly in 7.0).
Django provides an `HttpRequest.resolver_match` attribute [0] that
allows downstream code to inspect a request object to see how its URL
was resolved to a view.
Wagtail's RoutablePageMixin does its own sub-URL routing to call
different view functions on a page object, but the resolver result isn't
similarly made available.
This commit sets a new `routable_resolver_match` attribute on the
request object, akin to Django's `resolver_match`, that stores this
sub-URL routing information for downstream use.
Documentation has been updated appropriately (along with a couple of
other minor broken things in the RoutablePageMixin docs).
[0] https://docs.djangoproject.com/en/5.0/ref/request-response/#django.http.HttpRequest.resolver_match
* Accept alias for WAGTAILIMAGES_RENDITION_STORAGE
* Update wagtail.images.models.get_rendition_storage to handle the case when the WAGTAILIMAGES_RENDITION_STORAGE setting is given a storage alias (defined in the STORAGES setting). Preserve old behavior when a dotted module path or a Storage instance are given.
* Refactor and improve all tests related to the WAGTAILIMAGE_RENDITION_STORAGE setting.
* Update related documentation.
The new settings introduced in #11582 / #11536 only considered one use case of disabling the shared password option. However, we may want to allow for more complex configuration in the future in this area.
Ensure we can support potential future requirements such as #11640 with a more flexible structure for private pages & collections.
The following settings have been changed from boolean to dictionary values.
WAGTAIL_ALLOW_SHARED_PASSWORD_PAGE -> WAGTAIL_PRIVATE_PAGE_OPTIONS
WAGTAIL_ALLOW_SHARED_PASSWORD_COLLECTION -> WAGTAILDOCS_PRIVATE_COLLECTION_OPTIONS
Adds two new helper static methods:
- `Page.route_for_request()` - to find the page route, given a request
object and a URL path
- `Page.find_for_request()` - to find the page given, a request object and a URL
path