Reviewing the Item Handler Template

The item handler templates let us display individual entries in a listing view.

The List­ing Item Tem­plate, which we’ve named item.twig in the imple­men­ta­tion of the sam­ple site Down­link, han­dles the con­tent lay­outs for the list­ing pages, like cat­e­go­ry pages or entries by tag. This includes the home­page, where we have a list­ing of the dif­fer­ent con­tent from the site (two types of Blog con­tent and Pod­cast episodes).

The rea­son we have the List­ing Item Tem­plate sep­a­rate from the Entry Tem­plate is so we can dis­play our entry con­tent in a dif­fer­ent way on list­ing pages. Some­times, for exam­ple, list­ing pages, like a home­page or cat­e­go­ry page, have trun­cat­ed entry con­tent or excerpts with a link to read more. If we used the full Entry tem­plate to han­dle this then we’d have to make that tem­plate han­dle more than one sce­nario, which increas­es the com­plex­i­ty of our templates.

Like the Entry tem­plate we just dis­cussed, the List­ing Item Tem­plate uses an include state­ment and a list of dynam­i­cal­ly-gen­er­at­ed tem­plate names. 

{% include ["item/" ~ entry.section.handle ~ "/" ~ entry.type, 
"item/" ~ entry.section.handle ~ "/default", "item/default"] %}

Here are all of the videos in Flexible Twig Templates in Craft 3:

1Introduction to the CourseRyan introduces the course, covering what we need and what we'll learn. 03:49
2What We're BuildingWe review the Downlink website, the project we'll build for this course. 02:02
3Reviewing the Template StackLet's use construction paper and labels to review how the template stack works. 05:09
4Stepping Through the Template Stack CodeLet's get familiar with the code that will make up our template stack. 05:03
5Introducing the Handler TemplatesThe handler templates are what kick off the requests to the other supporting templates in the stack. 02:24
6Reviewing the Entry Handler TemplateDiving in, we look at how the Entry Handler Template works. 05:35
7Reviewing the Item Handler TemplateThe item handler templates let us display individual entries in a listing view. 06:52
8Reviewing the Matrix Handler TemplateThe last of the three handler templates is one for all Matrix fields in the site. 04:08
9Preparing to Code the Template StackThe project setup you'll need to do to follow along and code with me. 01:29
10Reviewing the Layout TemplateThe layout template has all of the global markup and code for the site. 03:10
11Creating the Homepage Listing TemplateWe start building the template components with the homepage. This covers building out the 06:38
12Creating the Included TemplatesThe handler templates hand off to templates via includes. Let's build those included templates for our listing pages. 07:57
13Finishing the Homepage Listing TemplateWe wrap up the homepage listing template by creating additional included templates. We start to see the magic happen. 07:47
14Completing the Matrix Handler TemplateWe started the Matrix handler template earlier in the course so we could continue our work. Let's finish it up so it works as we need. 07:21
15Creating the Entry Handler TemplateSo far into the course and we're just doing Entry templates? Yes, but all of this prep work is going to speed things up. Let's make the entries come alive! 10:42
16Testing the Template StackAll of our work pays off as we add a new section to the site and see the flexible template stack react and work its magic! 05:56

Loading next video...