f:be.pageRenderer

The first question you should ask yourself is whether you want to build something using the existing TYPO3 interface, or build something completely bespoke. If you're making a bespoke interface, then you don't need this ViewHelper at all. In this event, bind your own JavaScript and CSS assets yourself.

However, if you want to build Extbase modules using the standard TYPO3 interface, thereby providing a close integration and compatibility with other modules, then use this ViewHelper. In essence, you only need to use two rows of code and around ten properties.

Properties

pageTitle

Variable type
String
Description
'title' tag of the module. Not required by default, as BE modules are shown in a frame.
Default value
Empty string
Required
No

loadExtJs

Variable type
Boolean
Description
Specifies whether to load ExtJS library. This option will be removed in TYPO3 v9.
Default value
FALSE
Required
No

loadExtJsTheme

Variable type
Boolean
Description
Whether to load ExtJS "grey" theme. This option will be removed in TYPO3 v9.
Default value
TRUE
Required
No

enableExtJsDebug

Variable type
Boolean
Description
If set to TRUE, the debug version of ExtJS is loaded. Use this for development only. This option will be removed in TYPO3 v9.
Default value
FALSE
Required
No

loadJQuery

Variable type
Boolean
Description
Whether to load jQuery library. This option will be removed in TYPO3 v9.
Default value
FALSE
Required
No

includeCssFiles

Variable type
Array
Description
List of custom CSS files to be loaded.
Default value
NULL
Required
No

includeJsFiles

Variable type
Array
Description
List of custom JavaScript files to be loaded.
Default value
NULL
Required
No

addJsInlineLabels

Variable type
Array
Description
Custom labels to add to JavaScript inline labels.
Default value
NULL
Required
No

includeRequireJsModules

Variable type
Array
Description
List of RequireJS modules to be loaded.
Default value
NULL
Required
No

jQueryNamespace

Variable type
String
Description
Store the jQuery object in a specific namespace. This option will be removed in TYPO3 v9.
Default value
Empty string
Required
No

Examples

All options

Custom CSS file EXT:your_extension/Resources/Public/Css/styles.css and JavaScript files EXT:your_extension/Resources/Public/JavaScript/Library1.js and EXT:your_extension/Resources/Public/JavaScript/Library2.js will be loaded, plus ExtJS and jQuery and some inline labels for usage in JS code.

<f:be.pageRenderer pageTitle="foo" loadExtJs="true" loadExtJsTheme="false" extJsAdapter="jQuery" enableExtJsDebug="true" loadJQuery="true" includeCssFiles="0: '{f:uri.resource(path:\'Css/Styles.css\')}'" includeJsFiles="0: '{f:uri.resource(path:\'JavaScript/Library1.js\')}', 1: '{f:uri.resource(path:\'JavaScript/Library2.js\')}'" addJsInlineLabels="{0: 'label1', 1: 'label2'}" />