I'm a beginner with Drupal. I'm building a **custom theme** and I would like to automatically display last third news on the bottom of the homepage, from the homepage template. Something like this:

    +-------------------------------+
    | +---------------------------+ |
    | |                           | |
    | |          Slides           | |
    | |                           | |
    | +---------------------------+ |
    |                               |
    | +---------------------------+ |
    | |                           | |
    | |           Page            | |
    | |           Body            | |
    | |                           | |
    | |                           | |
    | +---------------------------+ |
    |                               |
    | +-------+ +-------+ +-------+ |
    | | Last  | |Second | | Third | |
    | | News  | | Last  | | Last  | |
    | |       | | News  | | News  | |
    | +-------+ +-------+ +-------+ |
    +-------------------------------+

From the admin panel I created a content type named `Homepage` with fields for manage slides and the page body, then I created a new content (node) of type `Homepage`.

Inside my custom theme I created a template file named `node--homepage.html.twig` and inside it I can handle the `Homepage`'s fields (slides and body) and how to render them inside the page.

After that I created another content type `News` and I added some content of such type.

Now I would like to automatically display latest news inside the homepage template as in the figure above. What is the correct/best way to do it?

I'm thinking to load latest news in some `hook_preprocess_HOOK` function and add them inside a variable for the Twig template. Inside the template I will perform a `for` loop rendering latest news at the page's bottom. Is this a good way to do it or I'm completely out of the way?