Guten Abend,
wie verwende ich addTCAcolumns bei Flexforms?
Armin
Guten Abend,
wie verwende ich addTCAcolumns bei Flexforms?
Armin
schau Dir mal Dynamic Flexforms an 😉
Danke steffenk für deine Antwort.
Dynamic Flexforms hilft mir glaube ich nicht so richtig weiter.
Mal kurz zum meinem Problem.
Ich will eine Erweiterung für tt_news schreiben. Bei tt_news gibt es ja zwei Reiter, und in einem der Reiter sollen weitere Felder eingefügt werden. Ohne Flexforms konnte man dies ja mit addTCAcolumns() lösen, aber mit Flexforms...??
Armin
Hallo,
ArminB schriebMal kurz zum meinem Problem.
Ich will eine Erweiterung für tt_news schreiben.
nur mal vorn Bug geschossen... schau dir doch die Extensions an, die das bereits machen und schaus dir ab...
Ext albo_pretorio > Extends tt_news adding new fields.
bzw sonstige mögliche Kandidaten: http://typo3.org/extensions/repository/?tx_terfe_pi1%5Bview%5D=search&no_cache=1&tx_terfe_pi1%5Bsword%5D=tt_news
georg
moin,
die Idee andere Extension anzuschauen hatte ich schon bereits.
Den Sinn Zweck von albo_pretorio verstehe ich nicht. Wenn ich die Installiere, wird nicht mehr die Eingabeoberfläche von tt_news angezeigt sondern irendwelche anderern Felder.
Armin
So hab was gefunden was passen könnte, is aus einer ext kopiert die ich nicht hergeben kann:
: ext_tables.php
<?php
if (!defined ('TYPO3_MODE')) die ('Access denied.');
// get extension configuration
$confArr = unserialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['tt_news']);
if ($confArr['useStoragePid']) {
t3lib_extMgm::addPiFlexFormValue(9, 'FILE:EXT:ux_ttnews/flexform_ds.xml');
} else {
t3lib_extMgm::addPiFlexFormValue(9, 'FILE:EXT:ux_ttnews/flexform_ds_no_sPID.xml');
}
?>
dh du überschreibst die komplette flexform von tt_news
georg
moin,
die Flexform wird allein durch die xml-Datei gebildet.
Die tt_news sieht hier auch keinen hook vor, so das Du Dich auch nicht an dieser Stelle einklinken kannst.
Also entweder Du schreibst eine eigene Ext, die dann die Infos innerhalb der news ausgibt oder Du wandelst die tt_news für Dich ab. Zweiteres ist eigentlich nicht zu empfehlen, da es Dir sämtliche Updatemöglichkeiten nimmt.
@just2b
Danke für deine Hilfe.
dh du überschreibst die komplette flexform von tt_news
Ich möchte nicht die komplette flexform überschreiben. Es sollen ja nur zusätzliche Felder angefügt werden.
@steffenk
Die tt_news sieht hier auch keinen hook vor, so das Du Dich auch nicht an dieser Stelle einklinken kannst.
Mit addTCAcolumns() bekomme ich ja meine Felder auch in die tt_news.
Hier mal eine Grafik mit dem jetzigen Ergebnis ohne Flexforms: http://intervation.de/ablage/t3_news.jpg
Der Code http://intervation.de/ablage/ext_tables.txt
Danke Euch
Armin
Schau Dir mal mbl_newsevent an, die macht genau das was Du vorhast 😉
moin steffenk,
Schau Dir mal mbl_newsevent an, die macht genau das was Du vorhast
Leider nicht ganz. Hatte zwar auch schon mit Gedanken gespielt einfach oben einen weiteren Reiter einzufügen, was auch nicht schlecht ist, aber leider ist die Lösung dort ohne Flexforms.
Aber ich werde es wohl so ähnlich umsetzen..
Danke für die Unterstützung
Armin
Hallo zusammen,
ich bin eben auf Euren Thread gestoßen da ich ein ähnliches Problem habe.
Über den Kickstarter ist es ja möglich neue Felder zu einer DB hinzuzufügen, welche dann auch über addTCAcolumns() und addToAllTCAtypes() eingefügt werden. Selbst bei einer Extension die Flexform einsetzt werden die neuen Felder zwar angezeigt aber die Position innerhalb der Flexformansicht ist dann nicht definiert.
Wenn ich das richtig verstanden habe, kann eine bestehende Flexform nur komplett ersetzt werden, um weitere Felder einer anderen Erweiterung aufzunehmen und diese auch entsprechend in der Flexform positionieren zu können???
Das wiederum heißt aber, dass die Flexform einer Extension nur einmal erweitert werden kann?!
Mal folgendes Szenario:
Ich habe, wie von Euch beschrieben die tt_news Extension als Ausgangspunkt.
Dafür gibt es die fiktive Extension "tt_news_images". Diese Ext. überschreibt die Flexform von tt_news und fügt einen neuen Reiter "Bilder" und ein paar neue Felder hinzu.
Nun soll es noch eine dritte Erweiterung geben: "tt_news_maps". Diese Ext. soll ebenfalls bei tt_news einen neuen Reiter "Google Maps" hinzufügen. Da ich aber wieder die komplette Flexform überschreibe und die Ext "tt_news_maps" nichts von "tt_news_images" weiß, überschreibt diese meine erste Flexform und die Bildinfos sind verschwunden!
Bitte korrigiert mich wenn ich falsch liege!!!!!
Oder gibt es doch eine Möglichkeit eine Flexform über mehrere Extensions zu erweitern??? Das "Ding" heißt ja immerhin "FLEXform"...und nicht "Unflexform"! 😃
Vielen Dank im Voraus.
Gruß Jan
Habe ebenfalls das gleiche porblem und bräuchte schnell eine lösung... das komplette flexform zu überschreiben ist ja wie schon erwähnt keine lösung da dies ja nur einmal gemacht werden kann...
Die Reiter sind über Palette erzeugt. Wenn ein Reiter einen bestehenden überschreibt, so ist die Definition nicht richtig.
Info über die Paletten gibt es hier:
https://docs.typo3.org/m/typo3/reference-tca/main/en-us/Index.html
Hi Steffen,
die Palette steuert doch nur die Sichtbarkeit bestimmter Elemente ("zweite Optionspalette anzeigen" im BE)?!? Nicht aber die Position neuer Elemente.
Wäre denn ein Szenario denkbar (wie oben von mir beschrieben), bei dem beide tt_news-Erweiterungen installiert sind und alle neuen Reiter und Felder (beider Erweiterungen) in der tt_news-Flexform vorhanden sind?
Viele Grüße
Jan
ich hab nochmal nachgeschaut, wie ich das mal gemacht habe:
t3lib_extMgm::addToAllTCAtypes("tx_cal_event","--div--;Reservations,tx_skcalreserv_allowreservation;;;;1-1-1, tx_skcalreserv_maxreservations");
---div--- erzeugt einen neuen Reiter, Reservations ist der Titel und danach kommen die Felder.
Eigentlich sollten auch von anderen Extensions erzeugte Reiter erhalten bleiben, da addToAllTCAtypes ja aus "tx_cal_event" ein neues Array erzeugt.