Both site header and footer now use dynamic block system.
E.g. for custom header at `layouts/partials/components/headers/simple.html:
```
---
header:
navbar:
block: simple
---
```
Also, Params.footer.widget changed to Params.footer.block
Hooks replaced custom_js.html and custom_head.html
However, custom_js/custom_head remain supported for legacy purposes.
Despite commit acd74954b5 mentioning that the custom.html is still supported for now, I don't think it's being picked up at the moment. This PR resolves this issue.
- rename widgets/ folder to blocks/
- rename Blank block to Markdown
- rename Pages block to Collection
- replace Featured block with Collection block, filtered with `featured_only: true`
- standardise block variables to .wcPage and .wcBlock
- check requested block exists before loading
- refactor block parser to parse_block.html
E.g. a custom view (views/custom.html) can be wrapped with:
views/custom-start.html
views/custom-end.html
This allows for custom grid-based views (cards, etc.)
Adding `site.GetPage /privacy.md` to reflect the absolute path to `privacy.md`, as per the Hugo documentation for GetPage.
This should force Hugo to only link to a `/privacy.md` page at the root of the site and prevent Hugo searching for unrelated pages with `privacy` in the name (as it currently does, if for example you also have a /tags/privacy/ page).
Note that currently there's a Hugo bug where Hugo does not respect absolute paths in `site.GetPage`. Hence, Hugo can still return other unrelated pages (for example any other pages that have `privacy....` in the filename) until this bug is fixed: https://github.com/gohugoio/hugo/issues/10243
Adds support for loading featured image from media library via `image.filename` param as an alternative to placing a `featured.*` image in the page folder.
Supports setting a default feature image for all pages via Hugo Cascade in Hugo Config.
Supports featured image reuse without duplicating the image within each page folder.