Documentation changes in 4.6
Changes for TYPO3 4.6
TSconfig (doc_core_tsconfig)
23198: Core - Its not possible to hide translated records from listview [Resolved to Steffen Gebert]
Stefan Geith / Steffen Gebert
Web > List (mod.web_list):
- Property: hideTranslations
- Data type: list of table names
- Description: For tables in this list all their records in additional website languages will be hidden in the List module. Only records in default website languages are visible.
Use "*" to hide all records of additional website languages in all tables or choose tables by comma-separated list.
Example: mod.web_list.hideTranslations = *
or
mod.web_list.hideTranslations = tt_content,tt_news
24616: Core - New page links in new record wizards are not configurable [Resolved to Francois Suter]
François Suter, to be added to "New record wizard" description, before "order" property.
- Property: pages
- Data type: boolean
- Description: Use the following sub-properties to show or hide the specified links.
Available sub-properties:
- show.pageAfter = Show or hide the link to create new pages after the selected page.
- show.pageInside = Show or hide the link to create new pages inside the selected page.
- show.pageSelectPosition = Show or hide the link to create new pages at a selected position.
Setting any of these properties to 0 will hide the corresponding link, but setting to 1 will leave it visible.
Example:
mod.wizards.newRecord.pages.show {
pageInside = 0
}
hides the "Page (inside)" link.
- Default: 1
25705: Core - Add option to hide BE search box in list module []
Steffen Müller
Web > List (mod.web_list):
- Property: disableSearchBox
- Data type: boolean
- Description: Disables the search box located below the clipboard.
- Default: 0
26771: Core - Flexform sheet description should be editable via TSConfig [Closed to Kai Vogel]
Kai Vogel
Section: ->TCEFORM_flexformSheet
- The property "title" must be changed to "sheetTitle".
(Resolves 30266: TSconfig - Wrong key for FF sheet titles [Closed to Christian ])
- Property: sheetDescription
- Data type: string / getText
- Description: Specifies a description for the sheet shown in the flexform. Language splitted.
- Property: sheetShortDescr
- Data type: string / getText
- Description: Specifies a short description of the sheet used as link title in the tab-menu. Language splitted.
Section: ->TCEFORM, before "[tablename].[field].[dataStructKey].[flexSheet]"
- Property: [tablename].[field].[dataStructKey]
- Data type: ->TCEFORM_flexform
- Description: Properties for the TCEFORM FlexForm meta configuration.
FlexForms have a build in possibility to use different field configuration for multiple languages. The handling of this multi-language behavior is configurable in the meta settings of a FlexForm.
Section: ->TCEFORM_flexform, new before ->TCEFORM_flexformSheet, relates to: http://typo3.org/documentation/document-library/core-documentation/doc_core_api/4.3.0/view/4/2/#id2527168 (search for "<meta>")
- Property: langDisable
- Data type: boolean
- Description: If set, then handling of localizations is disabled. Otherwise FlexForms will not only allow editing the default language, but also additional languages according to "sys_languages" table contents.
- Property: langChildren
- Data type: boolean
- Description: If set, then localizations are bound to the default values 1-1 ("value" level). Otherwise localizations are handled on "structure level".
Example:
TCEFORM.tt_content.pi_flexform.login {
# Language settings plug-in configuration
langDisable = 1
langChildren = 0
}
TSref (doc_core_tsref)
16180: Core - Add random on listNum [Closed to Peter Niederlag]
Mario Rimann
Add to 1.5 Function -> stdWrap -> table with functionality as a new entry for listNum
New (Sub-)Property: rand
Description: returns a random item out of a list
Example:
page.5 = COA_INT
page.5 {
10 = TEXT
10 {
field = subtitle
stdWrap.listNum = rand
}
}
That way the subtitle field to be displayed is chosen randomly upon every reload.
17634: Core - Remove default CSS [Closed to Susanne Moog]
TSref after removeDefaultJS:
- removeDefaultCss
- boolean
- Remove CSS generated by _CSS_DEFAULT_STYLE configuration of extensions.
17881: Core - Enable stdWrap for select.where [Closed to Oliver Hader] + 18822: Core - Add stdWrap to each of the properties of TypoScript "select" [Closed to Ernesto Baschny]
Functions -> select: Data type for all these properties have gained /+stdWrap property: uidInList, recursive, orderBy, groupBy, max, begin, where, languageField, selectFields, join, leftjoin, rightjoin
Additionally add to the description of select itself (in the introduction section, above the table):
Be careful if you are using GET/POST data (for example GPvar) in select, you could introduce SQL injections. Always secure input from outside, for example with intval.
17896: Core - Capitalizing with stdWrap (TypoScript) [Resolved to Benjamin Mack]
Fabien Udriot
Add to TSref -> Section "Data types" -> "Data types reference" -> Property "case":
"capitalize" - Returns the given string with the first character of each word in uppercase.
19347: Core - Integrate string replacement to stdWrap [Closed to Oliver Hader]
Add to TSref, Section stdWrap, new section after "split" (similar to how split is represented there):
- New property: replacement
- Data type: ->replacement
- Description: Performs an ordered search/replace on the current content with the possibility of using PCRE regular expressions. An array with numeric indexes defines the order of actions and thus allows multiple replacements at once.
New section: replacement
Performs an ordered search/replace on the current content with the possibility of using PCRE regular expressions. An array with numeric indexes defines the order of actions and thus allows multiple replacements at once.
| Property | Data type | Description |
| search | string /stdWrap | Defines the string that shall be replaced. |
| replace | string /stdWrap | Defines the string to be used for the replacement. |
| useRegExp | boolean /stdWrap | Defines that the search and replace strings are considered as PCRE regular expressions. Example: 10 {
search = #(a )CAT#i
replace = \1cat
useRegExp = 1
}
|
Example:
20 = TEXT
20 {
value = There_is_a_cat,_a_dog_and_a_tiger_in_da_hood!_Yeah!
stdWrap.replacement {
10 {
search = _
replace.char = 32
}
20 {
search = in da hood
replace = around the block
}
30 {
search = #a (Cat|Dog|Tiger)#i
replace = an animal
useRegExp = 1
}
}
}
20473: Core - Starttime/endtime is not taken into account when caching [Closed to Steffen Gebert]
Steffen Gebert
Add to TSref, Section: Setup -> CONFIG, near cache_period
- Property: cache
- Data type: array
- Description: Determine the maximum cache lifetime of a page.
The maximum cache lifetime of a page can not only be determined by the start and stop times of content elements on the page itself, but also by arbitrary records on any other page. However, the page has to be configured so that TYPO3 knows the start and stop times of which records to include. Otherwise, the cache entry will be used although a start/stop date already passed by.
To include records of type <tablename> on page <pid> into the cache lifetime calculation of page <page-id>, add the following TypoScript: config.cache.<page-id> = <tablename>:<pid>
Multiple record sources can be added as comma-separated list, see the examples.
You can use the keyword "all" instead of a <page-id> to consider records for the cache lifetime of all pages.
Examples:
config.cache.10 = fe_users:2 This includes the fe_users records on page 2 in the cache lifetime calculation for page 10.
config.cache.10 = fe_users:2,tt_news:11 This includes records from multiple sources, namely the fe_users records on page 2 and the tt_news records on page 11.
config.cache.all = fe_users:2 Consider the fe_user records on page 2 for the cache lifetime of all pages.
24047: Core - Optimize stdWrap usage for TypoScript content element MEDIA [Closed to Steffen Kamper]
Joey:
content element MEDIA
Adding stdWrap to the parameters
- renderType
- parameter.mmRenderType
- parameter.mmForcePlayer
- parameter.mmType
- parameter.mmWidth
- parameter.mmHeight
- forcePlayer
- type
- width
- height
24053: Core - Optimize stdWrap usage for TypoScript content element QTOBJECT [Closed to Steffen Kamper]
Joey:
content element QTOBJECT
Adding stdWrap to the parameter
type
And adding the missing property
stdWrap
to the element itself.
24067: Core - Optimize stdWrap usage for TypoScript content element SWFOBJECT [Closed to Steffen Kamper]
Joey:
content element SWFOBJECT
Adding stdWrap to the parameters
type file forcePlayer
And adding the missing property
stdWrap
to the element itself.
27694: Core - Speedup backend and allow compression in frontend [Closed to Kai Vogel]
Kai Vogel / Steffen Gebert
Section: Setup -> CONFIG, change "minifyJS"
minifyJS is deprecated and will be removed with TYPO3 4.8. Use config.compressJs instead.
Section: Setup -> CONFIG, add "compressJs"
- Property: compressJs
- Data type: boolean
- Description:
Enabling this option together with $TYPO3_CONF_VARS['FE']['compressionLevel'] in the Install Tool delivers Frontend JavaScript files using GZIP compression.
This can significantly reduce file sizes of linked JavaScript files and thus decrease loading times.
Please note that this requires .htaccess to be adjusted, as otherwise the files will not be readable by the user agent. Please see the description of $TYPO3_CONF_VARS['FE']['compressionLevel'] in the Install Tool.
Example: config.compressJs = 1
Note: TYPO3 comes with a built-in compression handler, but you can also register your own one using $GLOBALS['TYPO3_CONF_VARS']['FE']['jsCompressHandler'].
Example:
$GLOBALS['TYPO3_CONF_VARS']['FE']['jsCompressHandler'] = t3lib_extMgm::extPath($_EXTKEY) . 'Classes/class.tx_myext_jsCompressHandler.php:tx_myext_jsCompressHandler->compressJs';
Section: Setup -> CONFIG, change "minifyCSS"
minifyCSS is deprecated and will be removed with TYPO3 4.8. Use config.compressCss instead.
Section: Setup -> CONFIG, add "compressCss"
- Property: compressCss
- Data type: boolean
- Description:
If set, CSS files will be minified and compressed.
Minification will remove all excess space. The more significant compression step (using gzip compression) requires $TYPO3_CONF_VARS['FE']['compressionLevel'] to be enabled in the Install Tool. For this to work you also need to activate the gzip-related compressionLevel options in .htaccess, as otherwise the compressed files will not be readable by the user agent.
Example: config.compressCss = 1
Note: TYPO3 comes with a built-in compression handler, but you can also register your own one using $GLOBALS['TYPO3_CONF_VARS']['FE']['cssCompressHandler'].
Example: $GLOBALS['TYPO3_CONF_VARS']['FE']['cssCompressHandler'] = t3lib_extMgm::extPath($_EXTKEY) . 'Classes/class.tx_myext_cssCompressHandler.php:tx_myext_cssCompressHandler->compressCss';
Section: Setup -> CONFIG, replace (!) "concatenateJsAndCss"
- Property: concatenateJs
- Data type: boolean
- Description: Setting config.concatenateJs merges JavaScript files referenced in the Frontend together.
Example: config.concatenateJs = 1
Note: TYPO3 comes with a built-in concatenation handler, but you can also register your own one using $GLOBALS['TYPO3_CONF_VARS']['FE']['jsConcatenateHandler'].
Example: $GLOBALS['TYPO3_CONF_VARS']['FE']['jsConcatenateHandler'] = t3lib_extMgm::extPath($_EXTKEY) . 'Classes/class.tx_myext_jsConcatenateHandler.php:tx_myext_jsConcatenateHandler->concatenateJs';
- Property: concatenateCss
- Data type: boolean
- Description:
Setting config.concatenateCss merges Stylesheet files referenced in the Frontend together.
Example: config.concatenateCss = 1
Note: TYPO3 comes with a built-in concatenation handler, but you can also register your own one using $GLOBALS['TYPO3_CONF_VARS']['FE']['cssConcatenateHandler'].
Example: $GLOBALS['TYPO3_CONF_VARS']['FE']['cssConcatenateHandler'] = t3lib_extMgm::extPath($_EXTKEY) . 'Classes/class.tx_myext_cssConcatenateHandler.php:tx_myext_cssConcatenateHandler->concatenateCss';
Section: Setup -> PAGE, change "includeJSlibs.[array]"
- Add to the description:
...
Each file has optional properties:
- .allWrap - wraps the complete tag, useful for conditional comments.
- .disableCompression - If config.compressJs is enabled, this disables the compression of this file.
- .excludeFromConcatenation - If config.concatenateJs is enabled, this prevents the file from being concatenated.
- .external - If set, there is no file existence check. Useful for inclusion of external files.
- .forceOnTop - boolean flag. If set, this file will be added on top of all other files.
Example:
...
Section: Setup -> PAGE, change "includeJS.[array]"
- Add to the description:
...
Each file has optional properties:
- .allWrap - wraps the complete tag, useful for conditional comments.
- .disableCompression - If config.compressJs is enabled, this disables the compression of this file.
- .excludeFromConcatenation - If config.concatenateJs is enabled, this prevents the file from being concatenated.
- .external - If set, there is no file existence check. Useful for inclusion of external files.
- .forceOnTop - boolean flag. If set, this file will be added on top of all other files.
- .type - setting the MIME type of the script (default: text/javascript)
Example:
...
Section: Setup -> PAGE, change "includeCSS.[array]"
- Add to the description:
...
Each file has optional properties:
- .allWrap - wraps the complete tag, useful for conditional comments.
- .alternate - If set (boolean) then the rel-attribute will be "alternate stylesheet".
- .disableCompression - If config.compressCss is enabled, this disables the compression of this file.
- .excludeFromConcatenation - If config.concatenateCss is enabled, this prevents the file from being concatenated.
- .external - If set, there is no file existence check. Useful for inclusion of external files.
- .import - If set (boolean) then the @import way of including a stylesheet is used instead of <link>
- .media - setting the media attribute of the <style> tag.
- .title - setting the title of the <style> tag.
Example:
...
28018: Core - Add ucfirst and lcfirst to stdWrap [Closed to Kilian Hann]
For the stdWrap property case add the following 2 possible values:
- ucfirst: Convert the first letter of the string to uppercase.
- lcfirst: Convert the first letter of the string to lowercase.
28027: Core - Add rounding functions to stdWrap [Closed to Andreas Wolf]
Kilian Hann:
Add to TSref, section "stdWrap", after property "hash"
- New property: "round"
- Data type: ->round
- Description: Round the value with the selected method to the given number of decimals.
New section: round
With this property you can round the value up, down or to a certain number of decimals. For each roundType the according PHP function will be used. The value will be converted to a float value before applying the selected round method.
- Property: roundType
- Data type: string /stdWrap
- Description: Round method which should be used.
Possible keywords:- ceil: Round the value up to the next integer.
- floor: Round the value down to the previous integer.
- round: Round the value to the specified number of decimals.
- Default: round
- Property: decimals
- Data type: integer /stdWrap
- Description: Number of decimals the rounded value will have. Only used with the roundType "round". Defaults to 0, so that your input will in that case be rounded up or down to the next integer.
- Default: 0
Example:
lib.number = TEXT
lib.number {
value = 3.14159
round.roundType = round
round.decimals = 2
}
This returns 3.14.
28032: Core - Add stdWrap for IMAGE.file.params [Closed to Xavier Perseguers]
Simon Koch
IMAGE.file.params and IMG_RESOURCE
params is now string/stdWrap instead of solely string
28095: Core - Add hashing algorithms to stdWrap [Closed to Fabrizio Branca]
Fabrizio Branca:
Add to TSref, Section stdWrap, new property after "intval" and before "round":
- New property: hash
- Type: string /stdWrap
- Description: Returns a hashed value of the current content. Set to one of the algorithms which are available in PHP. For a list of supported algorithms see http://www.php.net/manual/en/function.hash-algos.php
Example:
page.10 = TEXT
page.10 {
value = test@example.com
hash = md5
wrap = <img src="http://www.gravatar.com/avatar/|" />
}
28388: Core - Integrate Form project into Core [Closed to Patrick Broens]
Will be handled in 30443: TSref - Add a note on the new FORM object [Closed to Christopher ].
TCA reference (doc_core_tca)
22679: Core - Improve usability of group fields [Resolved to -]
Stefan Geith / geithman Section: ['columns'][fieldname]['config'] / TYPE: "group" Key: disable_controls Description: Disables subcontrols inside "group" control. Possible values are: browser (disabled browse button for list control), list (disables list and browse button, but _not_ the delete-button), upload (disables upload control) and delete (disables delete button; NOTE: if you use the delete-button when the list is disabled, _all_ entries in the list will be deleted). See example image below. Example Image:
28314: Core - TCA: Allow parameters to be specified for userFunc [Closed to Xavier Perseguers]
Sectoin: Additional $TCA features
Subsection: userFunc
Description: Additional parameters may be passed to the user function with the array key 'parameters':
'map' => array(
'label' => 'Google Map',
'config' => array(
'type' => 'user',
'userFunc' => 'Tx_MyExt_Tca_Map->render',
'parameters' => array(
'latitude' => 'gps_latitude',
'longitude' => 'gps_longitude',
),
),
),
25315: Core - Add a value slider as wizard to TCEforms [Resolved to Steffen Kamper]
Section: Additional $TCA features
Subsection: Specific wizard configuration options based on type
New wizard type: slider
Description: Adds a slider widget to the right of the input/select field. For select-type fields, the wizard will "slide" through the items making up the field. For input-type fields, it will work for fields evaluated to integer, float and time. It is advised to also define a "range" property, otherwise the slider will go from 0 to 10000.
Key: step
Type: integer/float
description: Sets the step size the slider will use. This can - for floating point values - also be a floating point itself.
Key: width
Type: pixels
Description: defines the width of the slider
Default: 400
NOTE: the slider wizard works properly with the range property only as of TYPO3 4.6.1, see: http://forge.typo3.org/issues/31724
26829: Core - Improve Backend search [Closed to Dmitry Dulepov]
Section: ['ctrl']
New option: 'searchFields' – comma-separated list of fields that can be searched by the user in the Backend. Starting from TYPO3 4.6 tables participate in Backend search only if they have this option.
Section: ['columns'][fieldname], in the description of the "config" option add to the block titled "Notice: For all configuration types, the":
- 'search' an array with additional search options for the field:
- 'pidonly' – searches in the column onlyif search happens on the single page (does not search the field if searching in the whole table)
- 'case' – make the search case-sensitive. This requires a proper database collation for the field (see your database documentation)
- 'andWhere' – additional SQL WHERE statement without 'AND'. With this it is possible to place an additional condition on the field being searched in. For example, for tt_content table it males sense to search the 'bodytext' field if 'CType' field is set to 'text' or 'textpic' only.
See also: http://dmitry-dulepov.com/article/backend-search-improvements-in-typo3-46.html
28353: Core - Add record to other table in "new record wizard" [Closed to Georg Ringer]
Section: ['ctrl']
New option: 'groupName' - This option can be used to group records in the new record wizard. If you define a new table and set its "groupName" to the key of another extension, your table will appear in the list of records from that other extension in the new record wizard.