TypoScript Configuration Reference

The TypoScript options configure the behaviour of the frontend plugin. They are registered in plugin.tx_fecookies.

Tip

Most of the options are set up with constants, you’d rather want to change the values of the constants than those in setup.

Conditions

The extension provides a set of TypoScript conditions in symfony expression language. They let you define the TypoScript rendering based on the presence or the value of the cookie without getting in trouble with the TYPO3 page cache. Learn more about conditions in the official TypoScript Reference.

Condition functions

cookieIsSet

Function
cookieIsSet
Parameter
none
Type
bool
Description
Returns true, when the cookie is set.
Example

True if cookie is set:

[cookieIsSet()]

True if cookie is not set:

[not cookieIsSet()]

cookieValue

Function
cookieValue
Parameter
none
Type
int / string
Description
Returns the cookie value.
Example

True if the cookie value is 1:

[cookieValue() == 1]

Important

Cookies have always the value “1” at the moment (when they are set by the API). In a future version of fe_cookies, it is planned to configure meaningful values.

showFrontendPlugin

Function
showFrontendPlugin
Parameter
int (0, 1 or -1)
Type
bool
Description
Returns true, when the frontend plugin should be shown. The parameter should be the value of the predefined constant typoscript:{$plugin.tx_fecookies.settings.enableFrontendPlugin} which happens to be either 0, 1 or -1.
Example

True if the frontend plugin should be shown:

[showFrontendPlugin({$plugin.tx_fecookies.settings.enableFrontendPlugin})]

True if the frontend plugin should not be shown:

[not showFrontendPlugin({$plugin.tx_fecookies.settings.enableFrontendPlugin})]

Constants

Edit the constants in the TYPO3 Constants Editor or directly in a sys_template record.

Templating

These options define the paths of the template files to be used for the rendering. This is the well known setup for fluid-based rendering, the options are defined in plugin.tx_fecookies.view.

Option

templateRootPath

Data type

string

Description

The template root path.

Default value: empty

Option

partialRootPath

Data type

string

Description

The partial root path.

Default value: empty

Option

layoutRootPath

Data type

string

Description

The layout root path.

Default value: empty

Settings

These options s are defined in plugin.tx_fecookies.settings.

Option

includeCssApi

Data type

bool

Description

If this option evaluates to true, the “CSS API” will be included in the page rendering.

Default value: 0

Option

enableCloseButton

Data type

bool

Description

If this option evaluates to true, the “close-button” will be shown by the plugin.

Default value: 0

Option

bannerPosition

Data type

string

Description

This option defines the position of the cookie-banner message in the default frontend plugin template by setting a CSS class. Valid values are “bottom” or “top”. If the option is set to any other value, no (positioning) CSS class is set.

Default value: bottom

Setup

As stated above, most of the options are defined using constants. The option names are the same in constants as in setup, refer to the constants documentation above. The following options have no constants configuration.

Option

settings.beforeBlocks

Data type

cObject

Description

In the dfefault template, this cObject will be rendered right before the message block records. It is invoked by:

<f:cObject typoscriptObjectPath="plugin.tx_fecookies.settings.beforeBlocks" />

Default value: TEXT (empty)

Option

settings.afterBlocks

Data type

cObject

Description

In the dfefault template, this cObject will be rendered right after the message block records. It is invoked by:

<f:cObject typoscriptObjectPath="plugin.tx_fecookies.settings.beforeBlocks" />

Default value: TEXT (empty)

Default style

The default style is included in the static template “Frontend Cookies: Default style”, which only defines plugin.tx_fecookies._CSS_DEFAULT_STYLE.

Other configurations

In the static template “Frontend Cookies: Base”, there are some further definitions. We assume, that the default PAGE object is configured as page = PAGE. If you use some other naming (eg. mypage = PAGE), be sure to register the needed scripts for it as well to get the frontend plugin to work correctly.

Example:

mypage = PAGE
// ...
mypage.includeJSFooterlibs.fe_cookies < page.includeJSFooterlibs.fe_cookies
mypage.includeCSSLibs.fe_cookies < page.includeCSSLibs.fe_cookies