How to display multiple entry loops on the homepage (Single section type) I've been learning Craft 3 for a couple weeks and I've run into a little snag. I have a homepage that I would like to display multiple entry loops and/or types. However, I cannot find how to do this on a Single (section). Ive been experimenting around, and I can get the desired effect by making the homepage a Structure (section) via multiple entry types, but that gets janky with the URL/URi setup (I've seen other articles saying to use the __home__ method, but seems like it gets messy to try and work around that with sub-pages).

Here is kinda what I'm going after for the homepage:



Hero Element (has a few of it's own fields)





Intro Element (has a few of it's own fields)





Image Slider Element (loops through some image asset entries)





MAIN ENTRY LOOP (loops through some entries that you click to go to the full entry (which has its own template))



So in summary, 
How can I have multiple entry loops/types on a Single, OR Use a Structure section as the homepage without getting to janky with the URL/URi? OR is there a better way to set this up that I'm not thinking of?
You can do this in a Single without too much trouble. Your homepage will presumably have its own template, so the simplest solution is to content-manage the fields for your Hero, Intro and Image Slider in the homepage Single, and then in the homepage template, hardcode the channels which will form the source of your main entry loop. That way, your homepage Single is responsible for managing content that is specific to that page only, and then outputs other content from elsewhere below.

Here's a quick example of how that might look in your homepage template Twig file:

{% set myHeroField = entry.myHeroField %}
{% set myIntroField = entry.myHeroField %}
{% set sliderImages = entry.sliderImagesField %}

&lt;h2&gt;{{ myHeroField.heading&lt;/h2&gt;
&lt;p&gt;{{ myHeroField.strapline&lt;/p&gt;
&lt;a href="{{ myHeroField.ctaLink.one().url"&gt;Read more&lt;/a&gt;

&lt;p class="intro"&gt;{{ myIntroField.textContent }}&lt;/p&gt;
&lt;a href="{{ myIntroField.ctaLink.one().url }}"&gt;See more&lt;/a&gt;

&lt;div class="carousel"&gt;
{% for sliderImage in sliderImages.all() %}
    &lt;img src="{{ slideImage.one().url }}&gt;
{% endfor %}
&lt;/div&gt;

&lt;!-- MAIN ENTRY CONTENT HERE --&gt;
{% set myContentEntries = craft.entries.section('myContentSection').all() %}

{% for contentEntry in myContentEntries %}
    &lt;!-- Output blog posts etc. --&gt;
{% endfor %}


If you want to get more advanced and flexible, you could use a dropdown or similar in your homepage fields to define which Sections you want to be included in the main entry loop. Sadly, there isn't a first-party Section fieldtype, though there is a third-party plugin (now deprecated, unfortunately). Alternatively, depending on how complex and changeable your content model is, you could use a Dropdown fieldtype and just hardcode your section handles into the values.

In your homepage template, you'd then do something like this to fetch entries to show in the main entry content:

{% set myContentEntries = craft.entries.section(entry.sectionsToShow).all() %}