Es gibt eine Beispielextension auf Github mit der man operations um ein neues Feld/Eigenschaft erweitern kann.
Note
Diese Extension ist schon etwas älter und läuft nur unter TYPO3 8, nicht unter 9.5! Wahrscheinlich müsst ihr die Extension anpassen, damit sie unter 9.5 läuft.
Wenn euch ein Feld/Eigenschaft fehlt, könnt ihr das mit solch einer Extension nachrüsten. In dieser Beispielextension wird das Model "operation" (der Einsatz) mit einer zusätzlichen Eigenschaft "subtitle" (Untertitel) erweitert. Wenn ihr mehr Felder/Eigenschaften braucht könnt ihr natürlich mehr Felder in der gleichen Art und Weise hinzufügen. Ersetzt "newfield" mit dem Namen eurer neuen Eigenschaft.
Neue Getter und Setter hinzufügen. In der gleichen Art könnt ihr das auch für ein anderes Model tun.
<?php
class Operation extends \KN\Operations\Domain\Model\Operation {
/**
* newfield
*
* @var \string
*/
protected $newfield;
/**
* Returns the newfield
*
* @return \string $newfield
*/
public function getNewfield() {
return $this->newfield;
}
/**
* Sets the newfield
*
* @param \string $newfield
* @return void
*/
public function setNewfield($newfield) {
$this->newfield = $newfield;
}
}
TCA Konfiguration für die Anzeige der Felder im Backend.
<?php
if (!defined ('TYPO3_MODE')) {
die ('Access denied.');
}
use TYPO3\CMS\Core\Utility\ExtensionManagementUtility;
// define new fields
$tempColumns = array(
// --- newfield begin ---
'newfield' => array(
'exclude' => 0,
'label' => 'LLL:EXT:extend_operations/Resources/Private/Language/locallang_db.xlf:tx_extend_operations_domain_model_operation.newfield',
'config' => array(
'type' => 'input',
'size' => 60,
'eval' => 'trim'
),
),
// --- newfield end ---
);
// add all new fields to tca
ExtensionManagementUtility::addTCAcolumns(
'tx_operations_domain_model_operation',
$tempColumns
);
// place new field where you need it
ExtensionManagementUtility::addToAllTCAtypes("tx_operations_domain_model_operation", 'newfield', '', 'after:title');
Locallang Key für die Übersetzungen der Feldnamen im Backend.
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<xliff version="1.0">
<file source-language="en" datatype="plaintext" original="messages" date="2013-11-11T21:36:44Z" product-name="operations">
<header/>
<body>
<trans-unit id="tx_extend_operations_domain_model_operation.newfield">
<source>My new field</source>
</trans-unit>
</body>
</file>
</xliff>
- Neue Felder für die Datenbank. Installiert die Extension oder nutzt den Datenbank Compare im Install-Tool um die neuen Felder
nun auch hinzuzufügen.
#
# Table structure for table 'tx_operations_domain_model_operation'
#
CREATE TABLE tx_operations_domain_model_operation (
newfield varchar(255) DEFAULT '' NOT NULL,
);
Leert den Cache im Install-Tool um die neuen Felder im Backend zu sehen. Später könnt ihr die neuen Daten auch im Fluid Template ausgeben lassen. Prüft dazu auch das TypoScript und passt ggf. die Template Pfade an.