In a feature for an event I have 2 templates: Speaker and Session. A session has a speaker, so in the session template we have a field to select a speaker.
As project templates, I also created speaker and session and they inherit from the feature templates (and some others to make them a worthy page). We did opt to set the data for these items on the template itself as they will never be personalized or anything like that and it makes things quite a bit easier (for dev and content editor).
But then I have an issue if I want to stick to the Helix guidelines: the "speaker" field in my session (feature) template will need a source to please the editors. In that source, I cannot use an exact location so I use a query (which is fine) but I would like/need to use the template that is allowed. But that I cannot do because if I follow Helix I should not be aware of the template (as that is on project level).
I know some people will say: datasource everything - don't put it on your template.. that would fix this issue but create 2 new ones:
- How do I explain my editor that he needs to create at least 2 items just to add a speaker or a session?
- How do I create a list overview of all sessions of a speaker? I can search for all session item that have that speaker selected, but that would give me the datasources and not the items I can link to.
I don't want to start a(nother) discussion here on datasourcing everything or whether Sitecore is missing some functionality on base-templates to fully incorporate Helix (let's do that on Slack) but how should I get around this? I actually just want to put the source on a (feature) field...