Module: Members
1 of 12 Pages
Implementing membership using Page Builder widgets
This module covers the process of developing membership functionality for your Xperience by Kentico website channels.
It includes technical guides about:
- Creating widgets for flexible member registration and sign-in
- Specifying a relationship between members and contacts, and synchronizing these entities
- Building a profile page, where members can update their personal information
- Designating and enforcing member-only areas of the website, which cannot be viewed by unauthenticated visitors
It also includes an introduction to the community-built XperienceCommunity.MemberRoles package, which enables you to have roles that distinguish different groups of members and which content they can access.
The community member roles package includes some alternative approaches that do not match the out-of-box approach, so we recommend reading about it before completing the other guides if you plan to use it in your project. This way, you can avoid using functionality that the package bypasses.
Before you start
These hands-on materials require the following:
- Familiarity with C#, .NET Core, Dependency injection, and the MVC pattern.
- A running instance of Xperience by Kentico, preferably 29.6.1 or higher.
Some features covered in the Training guides may not work in older versions.
- Basic knowledge of .NET Identity.
- Understanding how the Xperience Page Builder works and what developing Page Builder components looks like.
Code samples
You can find a project with completed, working versions of code samples from this module and others in the finished branch of the Training guides repository. This branch also includes membership functionality that is not associated with any guides.
The main branch of the repository provides a starting point to code along with these materials.
The code samples in this series are for .NET 8 only.
They come from a project that uses implicit using directives. You may need to add additional using
directives to your code if your project does not use this feature.
Some of the examples in this series tie in with custom fields from our training guide about customizing contacts.
If you have not already gone through this guide, feel free to consider those parts optional.