I am quite new in Episerver and still learning the stuff. What I thinking about is the following scenario
User sees a list of reports (coming from some external source)
User clicks on one of the reports and then a reports overview page is displayed
As far as I have understood I would solve it like this
Create two page templates, one for listing and one for overview.
Now the issue I see is that the these two templates would only be used by two pages only. Is there any other way of doing it? Maybe blocks or something else?
Thanks a lot for the help.
You could add some querystring parameters or partial routing to switch between list/overview and only end up with one template.
It shouldn't be a problem with two templates though.
Once you've created the pages you could hide the page type from edit mode and remove delete rights for the created pages.
Structurally you could just have a content page template and have the blocks you need on the page, we often just have a content page with a content area and then the blocks inside make up the page. However as some of your content is coming from an external source you would need to create a page for every external report item unless you used some form of custom routing. You could either use a custom router or what we tend to do is URL IIS Rewrite so dynamic page URLs are generated but routed back to a single instance of a report page, passing through the correct report id then the routing can have a unique SEO friendly URL but the page content can be off one main report page. In this scenario parts of the page could be fixed accross all reports and some from this 3rd party.
/reports/ - Listing page
/reports/report/ - Report page
Then on the report page a dynamic URL is generated e.g. /reports/my-cool-report/ which uses IIS Rewrite to route this URL to /reports/report/ with rewriting with a querystring of my-cool-report. Episerver would route this to /reports/report/ which could retrive this querystring of the report name and get the dynamic content.
Or as stated a custom routing system could be created such as https://world.episerver.com/blogs/reimonds-blog---episerver-developer/dates/2017/11/episerver-cms-and-commerce-custom-routing/