17-03-2022

Detect Preview or Channel Manager Request Context

Introduction

Goal

Detect whether a page is requested in the context of a preview site or the Experience manager.

Background

In your template, you might want to only include some HTML if the request is for a preview version of the site, or when the request is from the Experience manager.

Methods

HstRequestContext provides the following methods to determine preview state:

  • isPreview()
    Returns true when accessing preview content through a preview mount, i.e. any HST mount which has the property hst.type set to preview. This includes but is not limited to Experience manager requests.
  • isChannelManagerPreviewRequest()
    Returns true when accessing preview content through the Experience manager.

Examples

You can use the above methods within a JSP template as follows:

<hst:defineObjects/>
<c:set var="isPreview" value="${hstRequest.requestContext.preview}"/>
<c:set var="isChannelManagerPreviewRequest" value="${hstRequest.requestContext.channelManagerPreviewRequest}"/>

Or in a Freemarker template:

<@hst.defineObjects/>
<#assign isPreview=hstRequest.requestContext.preview/>
<#assign isChannelManagerPreviewRequest=hstRequest.requestContext.channelManagerPreviewRequest/>
Did you find this page helpful?
How could this documentation serve you better?
On this page
    Did you find this page helpful?
    How could this documentation serve you better?

    We rely on cookies

    to optimize our communication and to enhance your customer experience. By clicking on the Accept and Close button, you agree to the collection of cookies. You can also adjust your preferences by clicking on Manage Preferences. For more information please see our Privacy policy.

    Manage cookies
    Accept & close

    Cookies preferences

    Accept & close
    Back