[TYPO3-german] "Plugin einfügen": eigenes Plugin mit Konfigurationsfelder für Backend-User

Alexander Reetz typo3-announce at reetz.it
Thu Apr 16 11:22:35 CEST 2009


Hallo Daniela,


> Hallo Alexander,
> 
[...]

> Ich habe die 2 Schritte:
> a) Modify ext_tables.php
> b) Creating flexform_ds_pi1.xml (copy&paste des Beispiel XML)
> durchgeführt und bekomme aber keine "doppelten Startpunkt Dialog Boxen"
> angezeigt, wenn ich im Modul "Page" (TemplaVoila) die Seite auswähle und
> dann das Plugin editiere (Stift-Symbol). Sollte hier dann nicht der
> Reiter "Plugin" anders aussehen?
> 
> Mache ich einen Denkfehler?

Ne, wenn das alles richtig ist/wäre, sollte es da dann wirklich etwas
anders aussehen

> 
> Die Datei "ext_tables.php" sieht bei mir jedoch im Original anders aus,
> als in dem Tutoial:
> <?php
> if (!defined ('TYPO3_MODE')) { die ('Access denied.'); }
> t3lib_div::loadTCA('tt_content');
> $TCA['tt_content']['types']['list']['subtypes_excludelist'][$_EXTKEY.'_pi1']='layout,select_key';
> t3lib_extMgm::addPlugin(array('LLL:EXT:user_myextension/locallang_db.xml:tt_content.list_type_pi1',
> $_EXTKEY . '_pi1', t3lib_extMgm::extRelPath($_EXTKEY) .
> 'ext_icon.gif'),'list_type');
> ?>
> Das wurde vom Kickstarter 0.4.0 unter TYPO3 4.2.6 erstellt.
> 

Benutze ich auch

> 
[...]
> 
> Wahrscheinlich liegt hier bereits das Problem:
> a) addPlugin: Warum heißt es im Tutorial nur
> 'LLL:EXT:/locallang_db.php:tt_content.list_type_pi1' statt wir im
> Kickstarter-Output
> 'LLL:EXT:user_myextension/locallang_db.xml:tt_content.list_type_pi1'.
> Warum fehlt also der Extension-Key (Verzeichnisname)

Das Tutorial benutzt scheinbar noch die alten locallang.php Dateien, der
Kickstarter die neuen .xml (erstmal ignorieren)

> b) addStaticFile: den Ordner "pi1/static/" gibt es bei mir nicht. Was
> soll da drin sein?

Die wird bei mir zwar immer mit angelegt, ist für Flexforms aber (glaube
ich) nicht relevant


> c) $TBE_MODULES_EXT: muss folgendes nicht meinem Extension-Key angepasst
> werden: ["tx_sampleflex_pi1_wizicon"]? Also
> ["tx_user_myextension_pi1_wizicon"]
> d) extPath: Die Datei 'pi1/class.tx_sampleflex_pi1_wizicon.php' gibt es
> bei mir nicht. Was muss da drin stehen?

Die *wizicon* ist erstmal auch nicht nötig

> 
> Wie mache ich es richtig?
> 

Ich füge in der ext_table.php immer nach dem addPlugin bzw. addStatic
die folgenden beiden Zeilen für einen Flexform ein:


$TCA['tt_content']['types']['list']['subtypes_addlist'][$_EXTKEY.'_pi1']='pi_flexform';

t3lib_extMgm::addPiFlexFormValue($_EXTKEY.'_pi1',
'FILE:EXT:user_myextension/pi1/flexform.xml');

wobei Du ggf. folgendes anpassen musst:

1. In beiden Zeilen ggf. das '_pi1', wenn Du in einer Extension mehrere
Frontend-Plugins hast und Du einen Flexform für die _pi2 anlegen
möchtest (in Deinem Fall, kannst Du das erstmal so lassen)

2. In der zweiten Zeile den Pfad zum Flexform. Also zum einen den
extension_key (habe ich jetzt schonmal auf dein Beispiel in
"user_myextension" hin geändert), den Pfad (ich lege die Flexforms immer
in das Plugin-Verzeichnis [_piX]) und natürlich den Dateinamen. In
meinem Beispiel oben müsstest Du aus "flexform.xml" noch
"flexform_ds.xml" machen.

Dann sollte zumindest in den PlugIn-Einstellungen etwas zu sehen sein.


Versuch das erstmal. Wenn das auch nicht hilft, ist mir noch
aufgefallen, dass der addPlugin bei mir etwas anders aussieht:

t3lib_extMgm::addPlugin(Array('LLL:EXT:myextension/locallang_db.xml:tt_content.list_type_pi1',
$_EXTKEY.'_pi1'),'list_type');

Wenn das auch nicht hilft, meld Dich nochmal...

Grüße
Alex


> Vielen Dank im Voraus.
> Lieben Gruß
> Daniela Waranie
> 
> 
> 
> 
> 
> Lieben Gruß
> Daniela Waranie


More information about the TYPO3-german mailing list