Labels 

The labels this extension shows in the frontend come from EXT:academic_projects/Resources/Private/Language/locallang.xlf and its translations; the table below names the ones that come from another file. A site changes a label without copying a template, in TypoScript: under plugin.tx_academicprojects._LOCAL_LANG for every content element of the extension, or under plugin.tx_academicprojects_<plugin>._LOCAL_LANG for one of them. A label set for the plugin wins over one set for the extension.

EXT:my_sitepackage/Configuration/TypoScript/setup.typoscript
plugin.tx_academicprojects._LOCAL_LANG {
  default.project.runtime = Duration
  de.project.runtime = Laufzeit
}

# Only in one content element:
plugin.tx_academicprojects_projectlist._LOCAL_LANG.default.project.runtime = Duration
Copied!

The dots of a key need no escaping: TypoScript reads them as levels of its tree, and TYPO3 joins the levels to the key again. A label of another language goes under its language key, de for German.

Content element Path
Projects ( academicprojects_projectlist ) plugin.tx_academicprojects_projectlist._LOCAL_LANG
Selected Projects ( academicprojects_projectlistsingle ) plugin.tx_academicprojects_projectlistsingle._LOCAL_LANG

The page template of a project page is not rendered by a plugin: a site sets its labels under the path of the extension.

A language file override works as well, and replaces the label of the file itself: $GLOBALS['TYPO3_CONF_VARS']['SYS']['locallangXMLOverride'] on TYPO3 v13, $GLOBALS['TYPO3_CONF_VARS']['LANG']['resourceOverrides'] on TYPO3 v14.

Earlier versions of this extension read these overrides on TYPO3 v13 from plugin.tx_academic_projects instead, see the changelog.

Category types of a project 

A category type is named by the label sys_category.projects.<type> . The language file of this extension has one for each type it ships. A type a project registers for the group projects has none, and is named by the title it is registered with in Configuration/CategoryTypes.yaml instead, translated into the language of the page when the title is an LLL: reference. A label set under plugin.tx_academicprojects._LOCAL_LANG , or under the path of one content element, wins over the title:

EXT:my_sitepackage/Configuration/TypoScript/setup.typoscript
plugin.tx_academicprojects._LOCAL_LANG {
  default.sys_category.projects.funding_body = Funding
  de.sys_category.projects.funding_body = Förderung
}
Copied!

A template override hands the label to the title view helper, see the changelog.

Where the labels are shown 

Placeholders in angle brackets stand for a part of the key that the template or the code fills in, a category type or a field name for example.

Key Shown by
activeState.<state> Partials/Project/DemandActiveState.html, Partials/Project/ActiveFilters.html, Partials/Project/Item.html
activeState.label Partials/Project/DemandActiveState.html
filter.activeFilters.label , filter.activeFilters.remove , filter.reset Partials/Project/ActiveFilters.html
filter.moreFilters Partials/Project/DemandCategories.html
list.noProjectsFound Partials/Project/ItemList.html
list.resultCount.singular , list.resultCount.plural Partials/Project/ResultCount.html
project.budget Partials/Project/Page/Facts.html
project.funders Partials/Project/Page/Facts.html
project.runtime Partials/Project/Page/Facts.html
project.since Partials/Project/Page/Facts.html
project.until Partials/Project/Page/Facts.html
sorting.direction.label Partials/Project/DemandSorting.html
sorting.field.label Partials/Project/DemandSorting.html
sys_category.projects.<type> Partials/Project/Page/Categories.html, Partials/Project/DemandCategories.html, Partials/Project/Item.html
sys_category.projects.allOptions Partials/Project/DemandCategories.html
sys_category.projects.allOptions.<type> Partials/Project/DemandCategories.html
sorting.field.<field> , sorting.direction.<direction> The options of the sorting select, translated by its view helper