---
title: "Labels"
manual: "Academic Profiles"
version: "2.4"
permalink: "https://docs.typo3.org/permalink/fgtclb/academic-persons:configuration-labels@2.4"
source: "Configuration/Labels/Index.rst"
rendered: "2026-10-26T16:44:14+00:00"
---

# Labels {#configuration-labels}

The labels this extension shows in the frontend come from
[`EXT:academic_persons/Resources/Private/Language/locallang.xlf`](https://docs.typo3.org/m/typo3/reference-coreapi/main/en-us/ExtensionArchitecture/FileStructure/Resources/Private/Language.html#file-extension-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**

```typoscript
plugin.tx_academicpersons._LOCAL_LANG {
  default.list.noProfilesFound = Nobody found
  de.list.noProfilesFound = Keine Personen gefunden
}

# Only in one content element:
plugin.tx_academicpersons_list._LOCAL_LANG.default.list.noProfilesFound = Nobody found
```

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']`.

Earlier versions of this extension read these overrides on TYPO3 v12 and v13 from
`plugin.tx_academic_persons` instead, see
[the changelog](https://docs.typo3.org/permalink/fgtclb/academic-persons:important-label-overrides-use-the-documented-path@2.4).

## Where the labels are shown {#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.<name>` | `Templates/Profile/Detail.html` |
| `detail.additionalInformation` | `Templates/Profile/Detail.html` |
| `detail.contracts` | `Templates/Profile/Detail.html` |
| `detail.emailAddresses` | `Templates/Profile/Detail.html` |
| `detail.phoneNumbers` | `Templates/Profile/Detail.html` |
| `detail.physicalAddress.<type>` | `Templates/Profile/Detail.html` |
| `detail.publicationsLink` | `Templates/Profile/Detail.html` |
| `detail.room` | `Templates/Profile/Detail.html` |
| `detail.since` | `Templates/Profile/Detail.html`, `EXT:academic_persons_edit/Resources/Private/Partials/Profile/List/ProfileInformation.html` (from `plugin.tx_academicpersons` only) |
| `detail.till` | `Templates/Profile/Detail.html`, `EXT:academic_persons_edit/Resources/Private/Partials/Profile/List/ProfileInformation.html` (from `plugin.tx_academicpersons` only) |
| `detail.website` | `Templates/Profile/Detail.html` |
| `list.noContractsFound` | `Templates/Profile/SelectedContracts.html` |
| `list.noProfilesFound` | `Partials/Profile/List/ItemList.html`, `Templates/Profile/Card.html`, `Templates/Profile/SelectedProfiles.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` |
