Labels 

The labels this extension shows in the frontend come from EXT:academic_persons/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_academicpersons._LOCAL_LANG for every content element of the extension, or under plugin.tx_academicpersons_<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_academicpersons._LOCAL_LANG {
  default.detail.contact = Get in touch
  de.detail.contact = Kontakt
}

# Only in one content element:
plugin.tx_academicpersons_detail._LOCAL_LANG.default.detail.contact = Get in touch
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
Profile list ( academicpersons_list ) plugin.tx_academicpersons_list._LOCAL_LANG
Selected profiles ( academicpersons_selectedprofiles ) plugin.tx_academicpersons_selectedprofiles._LOCAL_LANG
Selected contracts ( academicpersons_selectedcontracts ) plugin.tx_academicpersons_selectedcontracts._LOCAL_LANG
Profile detail ( academicpersons_detail ) plugin.tx_academicpersons_detail._LOCAL_LANG
Profile list and detail ( academicpersons_listanddetail ) plugin.tx_academicpersons_listanddetail._LOCAL_LANG
Profile card ( academicpersons_card ) plugin.tx_academicpersons_card._LOCAL_LANG

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_persons instead, see the changelog.

The subline of the public profile, the help texts of the fields and the headings of the document sections take a full LLL:EXT: reference; the help texts of contract and contact fields and of document sections also literal text. A translation domain reference of TYPO3 v14, LLL:my_sitepackage.messages:key, does not resolve there: the translations pass the name of their extension, which TYPO3 then prefers.

The help texts and the section headings are shown by the profile editor, which translates them with its own name: a site overrides them under plugin.tx_academicpersonsedit._LOCAL_LANG , keyed by the id of the label in its file.

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
contracts.<field> Partials/Profile/Contract/Field.html
detail.<field> Partials/Profile/PublicProfile/Links.html, Partials/Profile/PublicProfile/MenuSections.html, Partials/Profile/PublicProfile/MenuSectionsDatas.html, Partials/Profile/PublicProfile/ProfileEntries.html
detail.contact Partials/Profile/PublicProfile/Contact.html
detail.navigation Partials/Profile/PublicProfile/MenuSections.html
detail.physicalAddress.<address type> Partials/Profile/PublicProfile/Contact.html
detail.room Partials/Profile/PublicProfile/Contact.html
detail.since Partials/Profile/PublicProfile/TimelineItem.html
detail.till Partials/Profile/PublicProfile/TimelineItem.html
list.alphabetFilter.navigation Partials/Profile/List/AlphabetPagination.html
list.alphabetFilter.noProfiles Partials/Profile/List/AlphabetPagination.html
list.alphabetFilter.showAll Partials/Profile/List/AlphabetPagination.html
list.filter.functionType Partials/Profile/List/Filter.html
list.filter.functionType.all Partials/Profile/List/Filter.html
list.filter.navigation Partials/Profile/List/Filter.html
list.filter.organisationalUnit Partials/Profile/List/Filter.html
list.filter.organisationalUnit.all Partials/Profile/List/Filter.html
list.filter.submit Partials/Profile/List/Filter.html
list.noContractsFound Partials/Profile/List/EmptyState.html
list.noProfilesFound Partials/Profile/List/EmptyState.html
list.table.<column> Partials/Profile/ViewMode/Table.html
list.viewMode.<view mode> Partials/Profile/ViewMode/Switch.html
list.viewMode.navigation Partials/Profile/ViewMode/Switch.html
The subline the setting publicProfile.details.subline names, a full reference into a language file: the override is keyed by the id of the label in that file Partials/Profile/PublicProfile/Subline.html
widget.pagination.first , widget.pagination.previous , widget.pagination.next , widget.pagination.last of EXT:fluid/Resources/Private/Language/locallang.xlf, read with the extension name of the core extension fluid: from plugin.tx_fluid._LOCAL_LANG , shared with every other template that shows them Partials/Profile/List/Pagination.html