November Happy Hour will be moved to Thursday December 5th.

Good practices

Vote:
 

Hello,

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. 

#184957
Nov 07, 2017 7:41
Vote:
 

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.

#185408
Nov 17, 2017 17:42
Vote:
 

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.

E.g.

CMS

/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/

#185450
Nov 20, 2017 14:50
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.