<logic:if>
AJAX
ajax:delayedload ajax:event ajax:navigation ajax:region
Data
data:calendar data:column data:eventrepeater data:postrepeater data:productbrandrepeater data:productcategoryrepeater data:productrepeater data:repeater data:table data:template data:tree
Forms
forms:address forms:captcha forms:checkbox forms:checkboxgroup forms:codeeditor forms:combobox forms:datepicker forms:dialogbox forms:editbox forms:fileupload forms:form forms:hidden forms:money forms:officeuseregion forms:option forms:password forms:paymentmethod forms:radiobutton forms:radiobuttongroup forms:row forms:searchbox forms:signature forms:slider forms:spinbox forms:submitbutton forms:submitimage forms:submitlink forms:successcontent forms:textarea forms:timepicker
Layout
layout:gallery layout:productgallery layout:rotator layout:stepper layout:stepperpanel layout:tablist layout:tablistitem
Logic
logic:dependency logic:else logic:if
ATTRIBUTES
EXAMPLES
logic:include logic:parse logic:variable
Navigation
navigation:breadcrumbs navigation:item navigation:primary navigation:secondary
Personalisation
personalisation:firstname personalisation:fullname personalisation:lastname personalisation:other
Standard
standard:embed standard:icon standard:image standard:link standard:script standard:tooltip standard:video
Templates
templates:button templates:card templates:column templates:fancybox templates:faq templates:flexlayout templates:header templates:row templates:section templates:styles templates:teammember templates:testimonial
Regions
regions:content regions:contentadditional regions:security regions:togglable
Third Party
thirdparty:googlemap thirdparty:googlemapmarker

`<logic:if>` </...>

Defines a region which will show only if the supplied test evaluates to true.

Related Tutorials

Content

any
The content to show if the test condition is true.

Attributes

- `evaluateAt`
string
Sets whether to evaluate the test during the render phase (when rendered) or when the object (and children) are being constructed

Note: Do not use when used for checking security (as child nodes may still be constructed and events processed)

Valid options: render, init
- `test`
New
Sets the test for the statement

Tutorials

Examples

Test if Current Page is the home page

HTML:

<logic:if test="\Components\Website\Pages::currentPageId() == '/'"> This is the home page </logic:if>

Test whether a variable (Current Page) has an icon.

HTML:

<logic:variable value="[? \Components\Website\Pages::current() ?]" as="page" /> <logic:if test="$page['page_icon']"> The Current Page has an Icon. </logic:if>

Using logical operators

HTML:

<logic:if test="(\Components\Website\Pages::currentPageId() == '/') || (\Components\Website\Pages::currentPageId() == '/about/')"> This is the home page or the about page. </logic:if> <logic:if test="(\Components\Website\Pages::currentPageId() == '/') && !(\Components\Customers\Contacts::currentIsLoggedIn())"> This is the home page, AND the current contact is NOT logged in. </logic:if>