[TYPO3-german] Medien-Ressourcen erweitern
Bernd Pier
macbepepi at me.com
Fri Jun 2 08:24:00 CEST 2017
Am 01.06.17 um 08:06 schrieb Wolfertz, Sebastian:
> Und der Screenshot nochmal als Anlage per Email, da zumindest bei mir der Foren-Post total zerstückelt angekommen ist.
>
> -----Ursprüngliche Nachricht-----
> Von: typo3-german-bounces at lists.typo3.org [mailto:typo3-german-bounces at lists.typo3.org] Im Auftrag von Sebastian Wolfertz
> Gesendet: Mittwoch, 31. Mai 2017 15:28
> An: typo3-german at lists.typo3.org
> Betreff: [TYPO3-german] Medien-Ressourcen erweitern
>
> Hallo liebe Liste,
>
> ich würde gerne die Ressourcen sowohl für Seiten als auch für das Bilder-Inhaltsobjekt um eine Auswahl an Radio-Buttons erweitern, (siehe Screenshot)
>
> [img]index.php/fa/17134/0/[/img]
>
> Leider habe ich nicht die geringste Ahnung wie ich da vorgehen könnte, vor allem weil ich das Rad nicht neu erfinden will. Das ist doch bestimmt eine Standard-Palette die ich mit nur kleinen Anpassungen irgendwie weitern kann.
>
> Kann mich da jemand in die richtige Richtung weisen?
>
> Vielen Dank!
>
> Euer Sebastian
>
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
>
Hallo Sebastian,
ich mach das mit einer eigenen Extension die die Tabelle
sys_file_refernce erweitert. Dafür brauchst du eine einfache Extension
mit den Ordnern:
- Configuration->TCA->Overrides
- Resources
In Overrides legst du eine
sys_file_reference.php (die muss so heißen weil du die Tabelle
sys_file_reference erweiterst)
Da kannst du dann beispielhaft sowas implementieren:
<?php
if (!defined('TYPO3_MODE')) {
die ('Access denied.');
}
$temporaryColumns = array (
'tx_extend_media_css' => array (
'exclude' => 0,
'label' =>
'LLL:EXT:extend_media/Resources/Private/Language/locallang_db.xlf:media.tx_extend_media_css',
'type' => 'select',
'config' => array (
'type' => 'select',
'renderType' => 'selectSingle',
'items' => array (
array('LLL:EXT:extend_media/Resources/Private/Language/locallang_db.xlf:media.tx_extend_media_css.I.0',
''),
array('LLL:EXT:extend_media/Resources/Private/Language/locallang_db.xlf:media.tx_extend_media_css.I.1',
'half'),
array('LLL:EXT:extend_media/Resources/Private/Language/locallang_db.xlf:media.tx_extend_media_css.I.2',
'full')
),
'size' => 1,
'maxitems' => 1,
)
),
);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns(
'sys_file_reference',
$temporaryColumns
);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('sys_file_reference',
'--palette--;LLL:EXT:extend_media/Resources/Private/Language/locallang_db.xlf:media.palette_title;tx_extend_media',
'', '');
$GLOBALS['TCA']['sys_file_reference']['palettes']['tx_extend_media'] =
array(
'showitem' => 'tx_extend_media_css'
);
$GLOBALS['TCA']['sys_file_reference']['palettes']['imageoverlayPalette']['showitem'].=",--linebreak--,tx_extend_media_css";
Das müsstest du dann für deinen Fall ändern, aber TCA ist ziemlich gut
dokumentiert.
in Resources->Private->Language liegt dann deine Sprachdatei damit im BE
das Feld auch eine Beschriftung bekommmt.
Nun mußt du noch 1 Datei anpassen:
1. ext_tables.sql hier die DB Definition für dein Feld rein für mein
Beispiel:
CREATE TABLE sys_file_reference (
tx_extend_media_css varchar(255) DEFAULT '';
);
Das funktioniert mit allen Tabellen in Typo3. Ein etwas ausführlicheres
Tutorial gibt es z.B. hier.
http://www.sklein-medien.de/tutorials/detail/typo3-datenbanktabellen-um-neue-felder-erweitern/
Aber du findest bestimmt noch mehr zu dem Thema.
Grüsse
Bernd aus K.
More information about the TYPO3-german
mailing list