![]() |
| | LinkBack | Themen-Optionen | Thema bewerten | Ansicht |
|
#1
| |||
| |||
Guten Tag Ich benutze tt_products auf Typo3 3.8.1. Ich möchte wenn man einen neuen Artikel im Backend eingegeben hat, nachdem abschicken des Formulares eine eigene PHP-Funktion ausführen lassen wo ich sämmtliche Daten des Produktes an ein anderes Geschäftsinternes Tool weiterschicke. Die Funktion habe ich geschrieben nun müsste ich nur noch den richtigen Ort finden (das richtige Script im Backend) wo ich auf die Variablen des neuen Produktes zugreifen kann (direkt nach dessen erstellen) und die Funktion platzieren könnte. Es geht hier um eine externe Lagerverwaltung die mit dem Typo3-Shop immer abgeglichen werden muss, also wenn ein Produkt im tt_Produkts erzeugt wird sollte es direkt auf der anderen Seite (geht via PHP-Funktion und XML) auch erzeugt werden und umgekehrt. Beim empfangen sehe ich keine Probleme da schreibe ich die Daten einfach in die Mysql DB und gut is, aber wo kann ich die Funktion platzieren für den Export vom tt_Products zum ext Tool? Vielen Dank falls mir da jemand einen Tip hat. Gruess M.Koller Geändert von pegatech (21.08.06 um 16:10 Uhr). |
|
#2
| |||
| |||
| Dieselbe Frage ist in news://typo3.german gestellt und beantwortet. |
|
#3
| |||
| |||
Für das 'reinhängen' meiner Funktion hatte es in der t3lib von typo3 die Datei "class t3lib_tcemain." dort hat es eine Funktion die heisst "process_datamap" die ausgeführt wird wenn ein Typo3-content im BE erzeugt wird. Diese Funktion hatte einen eingebauten Hook, nachdem ich einfach meine neue Funktion benannt habe. Also habe meine Methode in eine class gepackt, so : class tx_myextension_tcemainprocdm { function processDatamap_postProcessFieldArray ($status,$table,$id,&$fieldArray,&$reference) { $fieldArray['hidden'] = 1; echo "hallo"; }}?> ...und als "class.tx_myextension_tcemainprocdm.php" im root der Extension abgespeichert Dann in der Datei "ext_localconf.php" der extension die Class angemeldet, so : $GLOBALS ['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][] = 'EXT:tt_products/class.tx_myextension_tcemainprocdm.php:tx_myextension_tcemainprocdm'; Und schon wird das Ding ausgeführt wenn im BE ein Content erzeugt wird. Zum schluss lese ich den Request Array aus und mache eine Bedingung mit "if" damit die Methode nur dann ausgeführt wird wenn ein Shop-Inhalt erzeugt wird. Folgender Beitrag hat mir dabei sehr geholfen: http://72.14.221.104/search?q=cache:...h&ct=clnk&cd=1 Gruess M.Koller |
|
#4
| ||||
| ||||
| Zitat:
Zitat:
|
|
#5
| |||
| |||
| Hallo Für die Gegenrichtung, empfange ich die Daten, authentifiziere und schreibe die eigene Methoden die dann die Daten in die Datenbank schreiben. oder sind da andere Lösungen angebracht? gruess M.Koller |
|
#6
| ||||
| ||||
| Zitat:
|
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | Thema bewerten |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| jm_gallery: v. 0.9.1 admin interface | sternchen | Alle anderen Extensions | 0 | 03.02.08 05:39 |
| Gelöst Wie kommen die Feldinhalte ins BE-Interface bei der Definition von Relationen? | smantscheff | Extension modifizieren oder neu erstellen | 4 | 31.12.07 12:12 |
| Backend Interface via Extension anpassen? | HigeKun | Extension modifizieren oder neu erstellen | 3 | 25.12.07 16:22 |
| Benutzung Command Line Interface (CLI) | ichbinsdoch | TYPO3 4.x Backend | 1 | 08.07.06 16:36 |
| Interface Error | Canisi | TYPO3 3.x Backend | 0 | 31.03.06 13:33 |