Let's say you have three different types of blog content:
Text,
Audio (like a podcast)
Video (like a webinar)
Important: You want all of them to be on the same blog so they will appear in the same feed (and can be paginated), are searchable together, can share the same tags, and so on.
Now let's say you want a slightly different page layout for each content type. For example, you may want to embed the audio or video in those types of posts. Maybe you want a slightly different header, or different sidebar content.
How would you do this? Is there a way to have a different layout based on a tag or some other post metadata?
From my experience, what you could do is using a custom module to select the type of article template you want for your post.
Basically, you add a module in your main article template with X different options and inside the main template simply add an IF statement to load one or another partial template according to the value of this module.
By doing this you don't have to worry about dealing with tags and it's quite simple and intuitive for content creators.