This is another posting about how Adxstudio/365 Online portals are structured. Today we will look at the concept of portal web pages and how they and their related components are structured in a Portal application. Hopefully after reading this post, you will have a better understanding on how web pages work within the Portal and how you can apply this knowledge to further configure and build your own portal applications.

Like any other CMS or Web site, a Dynamics 365 Portal application is essentially just a collection of Web Pages.
At a basic level, all that is required to show content on a portal web page is a Web Page record that has a related Page Template record that points to either a Web Template or an aspx page.
To further enhance your Portal, Dynamics CRM/365 data can be surfaced using Entity Lists, Entity Forms, Webforms or customized templates.
Web Page
A ‘Web Page’ in an Adx/365 Portal sense is the main container for either static or dynamic content. After loading the Portal solutions, you will see an entity type called “Web Page”.

Using the Dynamics 365 interface, you can create and define various properties of the web page, including editing the content that will appear on the page. Pretty much every page on an Adx/365 Portal will require a web page record.
A web page can also be created using the Front Side Editing tools.
Page Template
The foundation of every web page in Adx/365 Portal is the “Page Template” record. A Page template is a Dynamics 365 record that is a pointer to either a Web Template or Rewrite URL, depending on the type of the page template. The web template or rewrite URL which will define how a web page is to be rendered and structured. The page template will point to one or the other, but not both.

Multiple web pages can use the same page Template, providing code reuse and a unified structure. Adx/365 Portals come with a set of predefined page templates to allow fast configuration of a Portal application, but there are instances where you might want to create your own page templates.
Web Template
If a Page Template is defined as type “Web Template”, then it is required to point to a Web Template. A Web Template is an entity type in Dynamics 365 that contains a web page structure using the Liquid Markup language. Introduced in Adxstudio Portals 7.0.0007, the Web Template record allows Portal configurators and developers to build customized templates without requiring access to the backend or needing Visual Studio. Web Templates can inherit the structure from other Web Templates using the liquid “extends” keyword. The Portals Administrators guide has an in-depth details of Liquid and its usage.

Rewrite URL
If a Page Template points to a “Rewrite URL” it means that the web page is based on an actual aspx page directly in the master portal. The rewrite URL is actually the relative path directly to the aspx file. These can be the out of the box files provided with the Portals or can be a custom or modified aspx pages if using the “self hosted” Adxstudio v7 portals.

Displaying Information
Static Content
Static content on an Adxstudio web page generally is entered in the “Copy” field of the web page record. This is essentially HTML, but could contain Liquid and JavaScript code. Either the Web Template or Rewrite aspx page will define where and how this content is rendered.
Entity List
A Web Page with an “Entity List” reference will display a Dynamics CRM view of data, typically in a “grid” format but also could be rendered in a Calendar, Map or OData formats. This is where the power of the portals begins to shine, easily surfacing data in Dynamics 365 to an external website.

Entity Forms
An Entity form will render a Dynamics CRM form view of data on a Web Page. It will require a record Guid be passed to the page in order for it to know what record the Web page will need to display.

Web Forms
A Web Form is a method that will allow a user to follow a series of steps on a Web Page. Consider a Web Form to be the Portal’s equivalent to a dialog or a Business Process flow.

Dynamic Content
In addition to HTML, Entity Lists, Entity Forms and Web Forms, additional Dynamics 365 content can be rendered and manipulated on a Portal web page with customized Web Templates or aspx pages further extended using client side JavaScript or backend .NET code (v7 only). These methods give a portal configurator or developer a lot of options for creating customized portal applications.
Again, this particular post was much more “theoretical” but I hope that this overview of the Web Page structure gives you a better understanding of how the Adx/365 Portals are structured.
Cheers
Nick
2 thoughts on “Portals Web Page Structure”