hugo/resources/page
Bjørn Erik Pedersen 90da7664bf Add page fragments support to Related
The main topic of this commit is that you can now index fragments (content heading identifiers) when calling `.Related`.

You can do this by:

* Configure one or more indices with type `fragments`
* The name of those index configurations maps to an (optional) front matter slice with fragment references. This allows you to link
page<->fragment and page<->page.
* This also will index all the fragments (heading identifiers) of the pages.

It's also possible to use type `fragments` indices in shortcode, e.g.:

```
{{ $related := site.RegularPages.Related .Page }}
```

But, and this is important, you need to include the shortcode using the `{{<` delimiter. Not doing so will create infinite loops and timeouts.

This commit also:

* Adds two new methods to Page: Fragments (can also be used to build ToC) and HeadingsFiltered (this is only used in Related Content with
index type `fragments` and `enableFilter` set to true.
* Consolidates all `.Related*` methods into one, which takes either a `Page` or an options map as its only argument.
* Add `context.Context` to all of the content related Page API. Turns out it wasn't strictly needed for this particular feature, but it will
soon become usefil, e.g. in #9339.

Closes #10711
Updates #9339
Updates #10725
2023-02-21 17:56:41 +01:00
..
page_generate Improve error messages, esp. when the server is running 2022-05-06 19:43:22 +02:00
pagemeta all: gofmt -w -r 'interface{} -> any' . 2022-03-17 22:03:27 +01:00
integration_test.go Fix permalinks issue with repeated sections 2023-01-17 12:49:16 +01:00
page.go Add page fragments support to Related 2023-02-21 17:56:41 +01:00
page_author.go Remove references to Google+ 2019-05-26 19:24:45 +02:00
page_data.go all: gofmt -w -r 'interface{} -> any' . 2022-03-17 22:03:27 +01:00
page_data_test.go all: Format code with gofumpt 2020-12-03 13:12:58 +01:00
page_kinds.go Rename taxonomy kinds from taxonomy to term, taxonomyTerm to taxonomy 2020-06-18 09:09:56 +02:00
page_kinds_test.go all: Format code with gofumpt 2020-12-03 13:12:58 +01:00
page_lazy_contentprovider.go Add page fragments support to Related 2023-02-21 17:56:41 +01:00
page_marshaljson.autogen.go Add page fragments support to Related 2023-02-21 17:56:41 +01:00
page_matcher.go Improve error messages, esp. when the server is running 2022-05-06 19:43:22 +02:00
page_matcher_test.go Localize all the GroupBy*Date methods 2022-04-05 16:11:11 +02:00
page_nop.go Add page fragments support to Related 2023-02-21 17:56:41 +01:00
page_outputformat.go Fix surprise OutputFormat.Rel overwriting 2022-01-04 10:38:38 +01:00
page_paths.go media: Make Type comparable 2021-03-14 15:21:54 +01:00
page_paths_test.go media: Make Type comparable 2021-03-14 15:21:54 +01:00
page_wrappers.autogen.go Finally remove deprecated Page methods 2022-02-14 13:24:36 +01:00
pagegroup.go Add page fragments support to Related 2023-02-21 17:56:41 +01:00
pagegroup_test.go Add page fragments support to Related 2023-02-21 17:56:41 +01:00
pages.go Add page fragments support to Related 2023-02-21 17:56:41 +01:00
pages_cache.go all: Format code with gofumpt 2020-12-03 13:12:58 +01:00
pages_cache_test.go tests: Convert from testify to quicktest 2019-08-12 13:26:32 +02:00
pages_language_merge.go all: gofmt -w -r 'interface{} -> any' . 2022-03-17 22:03:27 +01:00
pages_prev_next.go all: Fix minor typos 2020-12-16 12:11:32 +01:00
pages_prev_next_test.go all: Format code with gofumpt 2020-12-03 13:12:58 +01:00
pages_related.go Add page fragments support to Related 2023-02-21 17:56:41 +01:00
pages_related_test.go Add page fragments support to Related 2023-02-21 17:56:41 +01:00
pages_sort.go Add page fragments support to Related 2023-02-21 17:56:41 +01:00
pages_sort_search.go all: Format code with gofumpt 2020-12-03 13:12:58 +01:00
pages_sort_search_test.go all: Format code with gofumpt 2020-12-03 13:12:58 +01:00
pages_sort_test.go Add page fragments support to Related 2023-02-21 17:56:41 +01:00
pages_test.go all: gofmt -w -r 'interface{} -> any' . 2022-03-17 22:03:27 +01:00
pagination.go Misc doc, code refactoring to improve documentation 2023-01-04 18:01:26 +01:00
pagination_test.go Add page fragments support to Related 2023-02-21 17:56:41 +01:00
permalinks.go Fix permalinks issue with repeated sections 2023-01-17 12:49:16 +01:00
permalinks_test.go Fix permalinks issue with repeated sections 2023-01-17 12:49:16 +01:00
site.go Only invoke a given cached partial once 2023-01-25 17:35:23 +01:00
taxonomy.go Misc doc, code refactoring to improve documentation 2023-01-04 18:01:26 +01:00
testhelpers_test.go Add page fragments support to Related 2023-02-21 17:56:41 +01:00
weighted.go Some godoc adjustments and image struct renames 2022-04-27 23:53:56 +02:00
zero_file.autogen.go Make the deprecated Page/File methods (from Hugo 0.55) ERROR 2022-01-04 17:10:39 +01:00