← All apps
Custom Landing Page Hook logo

Custom Landing Page Hook

by Tejas Kanani

Data Modeling, Process & Business LogicLiferay Self-HostedLiferay PaaS

Description

After a user logs into Liferay, it is a common requirement to be able to redirect them to a different page based on their Organization or Site membership. This hook allows you to specify the desired redirection behavior using a properties file setting. Based on the properties file, it will redirect the user to their private page, public page, their default site's public/private homepage, or their default organization's public/private homepage. Simply install the hook and specify the property by overriding the following settings in your hook's portal.properties:

##
## Set override.default.landing.page.path to true if you want this property be override
## by CustomLandingPage path. If this is not provided by default it will take its value
## as true. And if this is set to false, CustomLandingPage hook will redirect to this page
## only. It needs to be true in case of Custom Landing page to work.
##
override.default.landing.page.path=true

##
## Set this property as per your needs for landing page after user log in. It could be from one of
## the value from below options
## 1. userPrivatePage
## 2. userPublicPage
## 3. sitePublicPage
## 4. sitePrivatePage
## 5. organizationPublicPage
## 6. organizationPrivatePage
## 7. role
## 8. userGroup
##
## For sitePublicPage, sitePrivatePage, organizationPublicPage, organizationPrivatePage option we
## can provide specific landing page friendly URL in custom attribute.
## example,
## For site/organization PublicPage, we can provide landing page in site custom attribute with key "landingPagePublic"
## landingPagePublic = /myHome , where /myHome is frienlyURL of a public page exist in particular site/organization site
## For site/organization PrivatePage, we can provide landing page in site custom attribute with key "landingPrivatePublic"
## landingPagePublic = /myPrivateHome , where /myPrivateHome is frienlyURL of a private page exist in particular site/organization site
## For role & userGroup, we can provide landing page complete relative URL in role OR userGroup's custom attribute with key "landingPage"
## landingPage = /web/mysite/home
##
## For more details,
## https://github.com/opensourceforlife/CustomLandingPage-Hook
##
custom.landing.page.type={userPrivatePage/userPublicPage/sitePublicPage/sitePrivatePage/organizationPublicPage/organizationPrivatePage/role/userGroup}

For defining,
1) Site/Organization's Public page
- Create custom attribute of type "TextField" with key "landingPagePublic" and define value as desired page's friendlyURL. i.e. /welcome
2) Site/Organization's Private page
- Create custom attribute of type "TextField" with key "landingPagePrivate" and define value as desired page's friendlyURL. i.e. /myhome
3) Role/UserGroup
- Create custom attribute of type "TextField" with key "landingPage" and define value as desired page's complete page URL. i.e. /web/mysite/myhome

- Glassfish with PACL issue
There is an open PACL/Glassfish issue which is currently under investigation (https://issues.liferay.com/browse/LPS-39137) .
Until it will get fixed below is the workaround for glassfish users.
1. Start Glassfish with security manager
2. Make sure portal.security.manager.strategy is set to "liferay" in poral-ext.properties

For complete release history visit -
https://github.com/opensourceforlife/CustomLandingPage-Hook /releases

For any issue/query/help/feedback,
Reach out to me @ admin{at}opensourceforlife.com

Source: Liferay's official Marketplace

More in Data Modeling, Process & Business Logic

Activiti Workflow Engine

by EmDev Limited

This plugin allows users and admins to use Activiti BPMN workflow engine for publication process (for example instead of default Kaleo). It almost fully supports BPMN 2.0 specification and may fully r

Address Validator

by Rivet Logic Corporation

The Address validator plugin enables the validation of addresses entered by the user. It uses some third party services or APIs for that purpose. The initial implementation uses Google Geocoding API,

Adobe Connect

by E2 Software India Pvt. Ltd

About Adobe Connect : Adobe Connect gives you complete control over the look and functionality of your virtual rooms. Create experiences that incorporate branding and content. Position functional pods

AdvicedAssets Portlet

by Tune IT

Portlet for Liferay that allows to show list of tematically-related content near every post in blog. Content list can include other blog posts, journal content articles and document library resources.