Salesforce Experience Cloud

Salesforce Experience Cloud sites can be used to allow employees, customers, and partners to connect. Some common Salesforce Experience Cloud use cases include:

  • Creating portal sites where customers can read knowledge base articles, contact service agents, and connect with other knowledgeable customers who can solve issues.
  • Collaborating on opportunities and deals.
  • Providing an HR space for employees to complete their onboarding, learn about benefits, and resolve other issues.

Deploying Skuid in an Experience Cloud site requires many of the same steps as overriding other areas of the Salesforce UI, with specific steps varying based on the chosen Experience Site template.

Prerequisites

Understand Experience Cloud

While some basic settings will be reviewed here, this topic assumes familiarity with Salesforce Experience Cloud.

The Salesforce Experience Cloud Overview is recommended reading before proceeding. You should at least be familiar with the process of enabling and creating Experience Cloud sites and configuring site settings.

Note

Salesforce Experience Cloud was formerly known as Salesforce Community Cloud. Some terminology updates to keep in mind if reviewing older material:

  • Sites were formerly known as communities.
  • Experience Builder templates, themes, and pages were known as Lightning community templates, themes, and pages.

Design with Skuid

This topic assumes you have already designed and created Skuid pages for your Experience Cloud site. If not, review Skuid’s topics on connecting to data and assembling pages with components.

Warning

If using the Navigation component within your Skuid pages, the Item Source property must be set to Manual. All other source options will result in errors within Salesforce Experience Cloud.

Deploying Skuid in Experience Cloud sites

How you deploy Skuid in Experience Cloud depends on the type of template used for the site.

Lightning Web Runtime-based templates

Skuid does not currently support templates based on the Lightning Web Runtime model.

Aura-based templates

Several Experience Builder site templates use Salesforce’s Aura component framework. Deploying Skuid in an Aura-based template mirrors Salesforce Lightning deployment methods.

Using the Skuid Page / Page Assignment Lightning component

Within the Experience Builder, use the Skuid Page or Skuid Page Assignment Lightning components as you normally would. Pages will preview within the Experience Builder and display properly when any changes are published to the Experience Cloud site.

Using the Visualforce Page Lightning component

It is also possible to insert Skuid pages into Experience Builder sites using the Visualforce Page Lightning component.

Follow the instructions listed here, working in the Experience Builder instead of the Lightning App Builder.

Note

Skuid pages will not preview within the Visualforce Page component in the Experience Builder, but they will display properly at the Experience Cloud site’s URL when published.

Salesforce Tabs + Visualforce Pages template

This template type is more akin to Salesforce Classic, using Visualforce tabs as pages within the Experience Builder site.

To deploy Skuid in this template, implement a Skuid page within a Visualforce page. Then, implement that Visualforce page in a Visualforce tab.

Create a Visualforce page to embed your Skuid page

Using the skuid:page Visualforce component to directly embed your Skuid page into the Visualforce page is recommended in Experience Cloud. If you haven’t used this override method before, it requires some preparation. Complete the prerequisite steps listed in the skuid:page component topic.

After completing those prerequisite steps, you’ll need Visualforce markup to embed your Skuid page. The sample code below can be used for most use cases after replacing MySkuidPage with the name of your Skuid page.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
<apex:page
   readonly="true"
   docType="html-5.0"
   showHeader="true"
   sidebar="true"
   title="Experience Cloud Home">
   <skuid:page
      page="MySkuidPage"
   />
</apex:page>

Note

Setting showHeader and sidebar to false will prevent the Salesforce header from being displayed. For more information and alternative markup samples, read the Object/Controller-independent pages section of the skuid:page Visualforce component topic.

With Visualforce markup prepared, create a new Visualforce page using it:

  1. In Salesforce setup, navigate to Visualforce Pages.
  2. Click New.
  3. Fill out the Label field with a recognizable name—for example SkuidExperienceCloudHome—which will autopopulate the Name field.
  4. Paste the appropriate markup in the Visualforce Markup pane.
  5. Click Save.

Create a Visualforce tab for the Visualforce page

With a Visualforce page created, you’ll additionally need to also create a Visualforce tab that references the Visualforce page. You’ll use this tab later when configuring the structure of the Experience Cloud site.

  1. In Salesforce setup, navigate to Tabs.
  2. Under Visualforce tabs, click New.
  3. Complete the fields:
    • Visualforce Page: Select the Visualforce page created in the previous section.
    • Tab Label: Enter a recognizable name that
    • Name: Autopopulated by the Tab Label.
    • Tab Style: Select a style appropriate for your Experience Cloud site.
    • Description: (Optional) Enter a description for this Experience Cloud site home page.
  4. Click Next.
  5. Choose which profiles can view the Visualforce tab.
  6. Click Next.
  7. (Optional) Select which apps to add the tab to.
  8. Click Save.

With the Visualforce tab created, it can now be implemented in the site.

Using the Visualforce tab in the site

To access the Skuid page in the site, its Visualforce tab (and thus its Visualforce page) must be added to the site through the Administration screen of Experience Workspaces. Sites with this template type typically only have the Chatter tab by default.

If you’ll be totally overriding the site with Skuid, consider using a custom home page as detailed in Salesforce’s Use a Custom Experience Cloud Home Page documentation.

Allow Experience Cloud users to access Skuid

Note

  • You must purchase enough Skuid subscriptions to match the number of Experience Cloud users accessing your Skuid page on the site. For more information, contact a Skuid sales rep regarding subscriptions.
    • Within the Salesforce universe, the term “Skuid license” refers to a user’s ability to interact with Skuid. While the Skuid UI reflects this terminology to avoid confusion, the “number of Skuid licenses” you have refers to purchased Skuid subscriptions.

When you are adding members to your Experience Cloud site, keep in mind that each user who will be accessing your Skuid page—whether they are an internal or external user—will need the appropriate Skuid license and permission set.

  • For all users who will access Skuid in any way, assign them a Skuid license.
  • For any users that will be viewing the site, assign them the Skuid Page Viewer permission set.

To make managing your Experience Cloud site users as simple as possible, we recommend using Skuid’s automatic license and permission assignment capability within Configure > User Licensing / Permissions. Your Skuid settings can be configured to automatically add both a Skuid license and the Skuid Page Viewer permission set to any new site profile user. These settings can also be configured so that licenses are removed automatically as users become inactive, helping manage Skuid license numbers.

Note

Many Experience Cloud sites automate user creation and connection to a Salesforce contact using Apex triggers. If this is the case in your org, you may have issues with automatic license and permission set assignments, as Salesforce does not allow modification to setup and CRM objects in the same transaction. If you are having issues, see this section of the Skuid assignment topic.

Troubleshooting

Salesforce Experience Cloud errors are often related to permissions. Ensure that any affected Experience Cloud users or site user profiles have the appropriate permissions to access the Skuid pages used in the site. This includes verifying record-level access to any necessary Skuid pages and sometimes assigning field-level permissions appropriate for those Skuid pages. You may also consider changing the organization-wide sharing defaults.