0

I have set up a Customer Community with Self-Registration. I am having users register without setting a password. They receive the "Welcome Email" after self-registration.

The email has a link for the user to set their password.

After they set their password, the user is redirected to a Visualforce Page- how do I set this to an Experience Builder Page? I am not using Visualforce pages for my community.

The page that is being displayed is set in Administration -> Sites & Domains -> Custom URLs, then click the field under "Site Label" with Site Type = "Community" (Note clicking this when Type = Site.com Community returns a bad URL...

Now "Active Site Homepage" is a Visualforce Page, and that is all that's selectable (Not sure how this influences Experience Builder Page, however, removing access to certain Visualforce Pages under the related list: Site Visualforce Pages removes access to Experience Builder Pages for no documented reason?

For reference:

enter image description here enter image description here enter image description here enter image description here

0

This is a very easy declarative admin settings change. Go to your community Administration page and to the Login section (Workspaces --> Administration --> Login). There you will be able to select a Home Page. From the dropdown select the Builder page option, and then in the lookup select the one you want.

enter image description here

Update 2:40pm PST

The easiest way to solve this is to keep the Site.com config as "main" (which is what you select in the loop in the administration setup) and create a new Home Page variation and make that the active one in the Community Builder. This might require some export/import actions to take OR manually create it in the builder. If you already have a pre-configured lightning page, it is a matter of using that one as a Home Page variation.

| improve this answer | |
  • when I select Experience Builder Page I do not have the option to select any of my Experience Builder Pages I have two options main and login I do not have any pages labeled main in the "Experience Builder", the setting was already "Experience Builder Page" when I attempted to change it? – jordan.baucke Apr 6 at 19:51
  • "Note When Experience Builder is selected, only published Site.com Studio pages are included in the search results". You would have to go to the Site.com studio to publish the page you want to use seems like. – Glen De Marcos Apr 6 at 20:11
  • 1
    Sorry to hear. Hopefully, they can get that resolved ASAP. In the meanwhile, did you get a chance to see how to port a Community Builder Page to be one of the Home Page variations? – Glen De Marcos Apr 8 at 14:20
  • 1
    I see, then that means your reset password page has some redirect logic that is preventing the Home Page from being the landing page once authenticated. You will need to see what the reset password page is doing in that case - it could be hardcoded and all these out of the box settings wouldn't matter at all. – Glen De Marcos Apr 8 at 15:18
  • 1
    Thanks for the recording, that was very useful. The retUrl is then your main issue here. If there weren't a retUrl on the frontdoor redirect, you would hit the Home Page no problem. I'm unsure where the retUrl is being set for the frontdoor page, can you check the email template to verify how the link is being built? Maybe it is in the email template - that would be an easy fix. – Glen De Marcos Apr 8 at 16:14
0

Hack'ish fix:

There is an undocumented relationship between Site, Communities, Experience Builder & Visualforce Page & Site.com Studio.

The page that {!Community_Url} redirects to in email merge templates following password resets is set by Administration->Site->Active Site Home Page (prefixed with your Community Domain Url):

/apex/CommunityHomepage (this is a required field).

Modify this Visualforce Page like so:

<apex:page showHeader="false" 
sidebar="false" 
action="{!redirect}" 
controller="CommunityHomepageController">

</apex:page>
public Pagereference redirect(){
  Network myNetwork = [SELECT Id FROM Network WHERE Name ='Community Name' ];
  ConnectApi.Community  myCommunity = ConnectApi.Communities.getCommunity(myNetwork.id);
  Pagereference pr = new Pagereference(myCommunity.siteUrl);
  pr.setRedirect(true);
  return pr;
}
| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.