Eigene Extension - Vorgehensweise

  • MarkKnochen MarkKnoch...
    Padawan
    0 x
    59 Beiträge
    0 Hilfreiche Beiträge
    18. 01. 2012, 10:07

    Hallo,

    zu Beginn - ich habe ein paar kleine Typo3 Erfahrungen, PHP/MySQL so programmieren kann ich aber.

    Ich möchte ein Typo3 Seite machen, die eine eigene Erweiterung beinhaltet. Die Seite mit einfachen Inhaltselementen zu erstellen traue ich mir noch zu - bei der Erweiterung bin ich noch unsicher.

    Zu den Anforderungen:

    Im Backend sollen ein paar DB-Tabellen verwaltet werden - also Datensätze erstellen, ändern, löschen.

    Das sollte mit den gängigen Tutorials sogar noch machbar sein (http://www.traum-projekt.com/forum/73-workshops-und-tutorials/101411-workshop-typo3-extension-programmierung.html) - das sah nachvollziehbar aus.

    Die Auswertung wird da auch ganz gut beschrieben.

    Weiterhin benötige ich im BE ein Upload-Formular, wo eine CSV hochgeladen wird, die dann per eigenem PHP-Script ebenfalls diese oben genannten Tabellen füllen / ändern kann.

    Bereitet das Schwierigkeiten?

    Bzw. ist eine Erweiterung mit diesem Ansatz zu schaffen?

    Danke schonmal

    Mark


  • 1
  • aemka aemka
    Jedi-Ratsmitglied
    0 x
    562 Beiträge
    9 Hilfreiche Beiträge
    18. 01. 2012, 20:51

    Du kannst grundsätzlich so arbeiten, wie in dem Tutorial angegeben. Der modernere Weg wäre aber mit Extbase und Fluid.

    Für deinen CSV Import im BE, musst du deine Extension, egal über welchen Weg sie erstellt wird, mit einem BAckend-Modul ausstatten.

    Für alles das ist das Netz mit Tutorials voll, es gibt gute Bücher und offizielle DOkumentation. Du kommst aber keinesfalls drumherum dich intensiv damit zu beschäftigen und viel zu lesen und zu verstehen. D.h. der Weg könnte steinig werden.

    http://www.aemka.de/

  • cephei cephei
    Padawan
    0 x
    40 Beiträge
    1 Hilfreiche Beiträge
    25. 01. 2012, 09:25

    Es gibt doch sicher bereits brauchbare CSV Importer für TYPO3, die man einfach aus dem TER installieren kann. Bevor du dich an die arbeit machst, würde ich mich zuerst informieren, ob was für dich dabei ist, dass du brauchen kannst.

    Tabellen im Backend zu bearbeiten ist ohne grossen aufwand möglich. Da erstellst du einfach im Kickstarter deine Extension und gibtst die Tabellen und Felder direkt im Kickstarter an. Im Backend kannst du dann auf einer beliebigen Seite oder einem SystemFolder Datensätze dieser Tabellen anlegen. Einfach auf neu klicken und entsprechende Datensätze auswählem. Da musst du nichtmal was programmieren.

    Diese Signatur ist in Ihrem Land leider nicht verfügbar.

  • MarkKnochen MarkKnoch...
    Padawan
    0 x
    59 Beiträge
    0 Hilfreiche Beiträge
    25. 01. 2012, 09:42

    [quote="cephei"]
    Es gibt doch sicher bereits brauchbare CSV Importer für TYPO3, die man einfach aus dem TER installieren kann. Bevor du dich an die arbeit machst, würde ich mich zuerst informieren, ob was für dich dabei ist, dass du brauchen kannst.[/quote]

    Das werde ich tun - wichtig wäre wahrscheinlich, den Import aber selber anpassen zu können, da ich vorhabe aus einer CSV gleich mehrere Tabellen zu bestücken.

    [quote="cephei"]
    Tabellen im Backend zu bearbeiten ist ohne grossen aufwand möglich. Da erstellst du einfach im Kickstarter deine Extension und gibtst die Tabellen und Felder direkt im Kickstarter an. Im Backend kannst du dann auf einer beliebigen Seite oder einem SystemFolder Datensätze dieser Tabellen anlegen. Einfach auf neu klicken und entsprechende Datensätze auswählem. Da musst du nichtmal was programmieren.
    [/quote]

    Geht das auch mit der Anpassung von Abfragen - also, zwei Tabellen kombiniert oder per Left Join + modulare ORDER BY Angaben?

    Danke schonmal

    Mark

  • cephei cephei
    Padawan
    0 x
    40 Beiträge
    1 Hilfreiche Beiträge
    25. 01. 2012, 12:12

    Mit dem Kickstarter bist du schon etwas eingeschränkt, was die Relationen betrifft.

    Schau mal hier:
    http://blog.undkonsorten.com/datenbankrelationen-typo3-irre-extension

    Wie aemka bereits anmerkte: Mit dem Extbase Kickstarter wäre das wahrscheinlich kein Problem. Da kannst du soweit ich weiss die Relationen einfach per Mausklick miteinander verbinden. (ich habs ehrlich gesagt noch nicht ausprobiert.)

    Der Extbase Kickstarter ist per default in deiner TYPO3 Installation. Du findest ihn im Extension-Manager, wo du ihn aktivieren kannst. Tutorials zu Extbase und Fluid findest du ganz einfach. Auch hier im Forum z.B.

    Diese Signatur ist in Ihrem Land leider nicht verfügbar.

  • aemka aemka
    Jedi-Ratsmitglied
    0 x
    562 Beiträge
    9 Hilfreiche Beiträge
    25. 01. 2012, 13:12

    @cephei:
    Es ist umgekehrt: mit dem alten Kickstarter bist du eigentlich weniger eingeschränkt, was Relationen angeht, als mit dem neuen. Im neuen Kickstarter fehlt noch jegliches TCA-Finetuning.

    Und der neue Extbase Kickstarter ist nicht per Default in einer TYPO3 Installation. Er muss nach installiert werden.

    http://www.aemka.de/

  • cephei cephei
    Padawan
    0 x
    40 Beiträge
    1 Hilfreiche Beiträge
    25. 01. 2012, 14:44

    Hmm. OK, hab auch noch mal nachgesehen. Du hast recht. Mein Fehler.

    Was die Relationen angeht; Wie gesagt, ich habs nicht ausprobiert. Ich hab nur gesehn, das man die Tabellen einfach per Mausklicks verbinden kann. Wie weit die Entwicklung der Extension ist, weiss ich nicht.

    Diese Signatur ist in Ihrem Land leider nicht verfügbar.

  • MarkKnochen MarkKnoch...
    Padawan
    0 x
    59 Beiträge
    0 Hilfreiche Beiträge
    25. 01. 2012, 14:56

    Klar ist, dass ich mich natürlich schon entsprechend mit Typo3 beschäftigen muss, aber so generell - kann ich mir das so vorstellen, dass ich z.B. für die Ausgabe der Daten aus den Tabellen einen "freien Platz" habe, in den ich dann SELECTs + Darstellung selber per PHP schreiben kann?

    Interessant wäre auch zukünftig - wenn die Tabellen ausgegeben werden, zum Beispiel ein Datensatz auf einer Seite, kann man das per Sitemap und sprechenden URls darstellen.
    Anders gefragt: ich habe 10 Datensätze, die per Extension verwaltet werden und per Ausgabe auf jeweils einer Seite erscheinen - bekomme ich dann eine Sitemap mit 10 sprechenden URLs

    Grüße

    Mark

  • cephei cephei
    Padawan
    0 x
    40 Beiträge
    1 Hilfreiche Beiträge
    25. 01. 2012, 17:01

    DB Abfragen kannst du per PHP im Plugin schreiben oder per TypoScript.
    (http://www.typo3.net/tsref/functions/select/)

    Ich denke es macht wenig Sinn, wenn du für jeden Datensatz eine neue Seite anlegst. Einfacher wäre es, Wenn du nur eine Seite verwendest und dazu eine SingleView Ansicht in deine Extension einbaust. So wie bei tt_news und einer vielzahl von anderen Extensions.
    Eine Detaillierte Anleitung dazu kannst du auch im Buch "Extensions für TYPO3" von Robert Steindl nachlesen. Da wird eine Extension programmiert mit DB, List- und SingleView. Dann hast du auch gleich die Funktionen für die TYPO3 Library.
    Es sei denn, du bist dir sicher, dass es bei den 10 Einträgen bleib. Macht aber wenig Sinn, dann brauchst du auch keine DB. So kannst du deine Informationen gleich statisch auf einer Seite darstellen.

    Diese Signatur ist in Ihrem Land leider nicht verfügbar.

  • 1