Using child page content in multiple templates

I have a project listing page with a large number of child pages. Each child page has custom headers with that project’s info. How can I use that info in other templates besides the project.html.twig template? My goal is to have three random listings in a home page module and an alpabeticaly linked list of some project content on another page.

Sounds like your looking for the page inject plugin: https://github.com/getgrav/grav-plugin-page-inject

You can also do this more programmatically with Twig:

{% set other_page = page.find('/my-other-page') %}
<div id="other-page">
  {{ other_page.content }}
</div>

OK. I also just found this in the documentation:

<ul>
{% for p in page.find('/projects').children if p != page %}
<li><a href="{{p.url}}">{{ p.title }}</a></li>
{% endfor %}
</ul>

Does that only list all projects where the method you mentioned llets you apply filters to which ones get shown?

it’s basically the same thing, but my example get’s a specific page, where as the one you mentioned in the docs gets all the children of a particular page, and loops over them.

OK, thanks! Good to know.