Ergebnis 1 bis 8 von 8

Thema: Inhalte dynamisch in Artikel einfügen.

  1. #1
    Contao-Nutzer
    Registriert seit
    17.04.2010.
    Beiträge
    23

    Standard Inhalte dynamisch in Artikel einfügen.

    Hallo Typolight Gemeinde,

    Ich noch etwas frisch bei Typolight und benötige eure Hilfe. Ich möcht in einen Artikel zusätlichen Text dynamisch einfügen. Der Text soll abhängig von der ID des Artikels sein.

    Ich habe zwei Ansätze:

    1. Ich füge ein PHP File per Insertag ein:

    Code:
    {{file::datei.php?id=15}}
    Hier muss ich aber in jeden Artikel diese Zeile einfügen und die id manuell eintragen.

    2. Ich füge die PHP Datei in das Tempalte mod_article.tpl ein:

    Code:
    <div>
    {{file::datei.php?id=<?php echo $this->id; ?>}}
    </div>
    Dann wird die id zwar dynamisch eingefügt, aber ich habe diesen Schnipsel in jedem Artikel.

    Hat jemand einen Lösungsvorschlag für mich?

    Gruss
    typo-user

  2. #2
    Contao-Urgestein Avatar von jan.theofel
    Registriert seit
    23.06.2009.
    Ort
    Berlin
    Beiträge
    1.846

    Standard

    Hi,

    wenn ich deien Fragestellung richtig verstehe, willst du das in einigen Artikel einfügen, in einigen aber nicht. Ist das korrekt? Und wenn ja: Wonach richtet sich, ob etwas einfügen willst oder nicht.

    Und was willst du eigentlich genau machen bzw. einfügen? Vielleicht gibt es dafür ja ein geeignete Erweiterung.

    Jan
    Jan Theofel
    Barcamp-Moderator für Corporate-Barcamps und öffentliche Barcamps

  3. #3
    Contao-Nutzer
    Registriert seit
    17.04.2010.
    Beiträge
    23

    Standard

    Hallo,

    Ich mache so eine Sammlung von Berufen. Ich habe für jeden Beruf einen Artikel geschrieben. Ich will ein php file einbinden, das aus einer Datenbank zusätzliche Informationen darstellt. Da ich einen Beruf durch die Artikel id identifizieren kann, kann ich aus der datenbank zusätzliche Informationen dynamisch darstellen. Meine Website hat ja aber noch andere Artikel und da sollte der inserttag nicht vorhanden sein.
    Gruß typo-user

  4. #4
    Contao-Urgestein Avatar von jan.theofel
    Registriert seit
    23.06.2009.
    Ort
    Berlin
    Beiträge
    1.846

    Standard

    Hi,

    der Inserttag wird vollständig ersetzt, so dass bei allen Artikel nichts mehr davon zu sehen ist. Wenn du also die DIVs mit in dein PHP Skript packst, taucht in den Nicht-Berufs-Artikeln auch nichts mehr mit auf. (Statt dem InsertTag kannst du übrigens auch direkt per PHP-Anweisung integrieren, z.B. mittels include.)

    Wenn du ein Erkennungsmerkmal für deine Berfusartikel hast, kannst du den externen PHP-Aufruf auch vermeiden. Dazu müssten diese z.B. alle ein spezielles Seitenlayout verwenden oder an einer bestimmten Stelle in deiner Seitenstruktur eingebaut sein. Das könntest du dann im Template abfragen. Mehrere Artikeltemplates gehen zur Zeit in TYPOlight nicht aber ich kürzlich dazu ein Ticket angelegt. ;-)

    Generell könntest du überlegen, die externe Datenbank aufzulösen und mit TYPOlight Bordmitteln abzubilden. Dazu könntest du die Katalog-Erweiterung oder ein eigenes Modul verwenden. Beides hätte den Vorteil, dass du die Daten auch über das TYPOlight Backend pflegen kannst. Weitere Vor-/Nachteile lassen sich ohne weitere Kenntnis von deinem Projekt nur schwer abschätzen.

    Jan
    Jan Theofel
    Barcamp-Moderator für Corporate-Barcamps und öffentliche Barcamps

  5. #5
    Contao-Nutzer Avatar von timbugto
    Registriert seit
    19.03.2010.
    Ort
    UAE
    Beiträge
    90

    Standard

    Hi,

    Wie kann man in einer include php file auf die bestehende DB zugreifen?
    Habe es mit folgenden in der php probiert, doch ich bekomme keinen Zugriff:

    class Module_box extends Module
    {
    protected function compile()
    {
    $arrItem = array();
    $objItem = $this->Database->execute("SELECT * FROM tl_meine_DB ORDER BY title");
    while ($objItem->next())
    .....
    }
    }

  6. #6
    Contao-Nutzer
    Registriert seit
    17.04.2010.
    Beiträge
    23

    Standard

    In welche PHP Datei schreibst du das rein?

  7. #7
    Contao-Nutzer Avatar von timbugto
    Registriert seit
    19.03.2010.
    Ort
    UAE
    Beiträge
    90

    Standard

    Hatte es in einer selbst erstellten .php im Template Ordner und mit insert_tag eingefügt.
    Habe nun gefunden das man so etwas lieber mit internen Mitteln und über Module lösen sollte.
    Ich bin nun dadurch ein ganze Stück weitergekommen und löse es nun über die entsprechenden Module.
    Ist doch einfacher als ich dachte - ICH MAG TL

  8. #8
    Contao-Nutzer Avatar von timbugto
    Registriert seit
    19.03.2010.
    Ort
    UAE
    Beiträge
    90

    Standard

    Ich glaube ich bräuchte dennoch einen Zugriff auf die DB.
    Besteht die Möglichkeit aus einer .tpl file auf die TL DB zu zugreifen?

    Edit: Lösung
    Falls es jemanden interessiert, man kann auch ohne Probleme auf die DB in TL zugreifen, einfach

    $this->import('Database');

    Voran stellen und dann wie gewohnt fortfahren. Wußte nicht wie man die DB initialisiert.
    Geändert von timbugto (21.04.2010 um 13:29 Uhr)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. Ein Artikel in mehrere Seiten einfügen
    Von Ql-dns187 im Forum Allgemeine Inhaltselemente
    Antworten: 7
    Letzter Beitrag: 08.03.2011, 07:02
  2. kopierte Inhalte aus word-datei in Textfeld einfügen
    Von konnie im Forum Allgemeine Inhaltselemente
    Antworten: 11
    Letzter Beitrag: 27.12.2010, 14:58
  3. Hintergrundbild aus Artikel einfügen
    Von raboe im Forum Layout / Templates / Holy Grail
    Antworten: 2
    Letzter Beitrag: 15.11.2010, 17:05
  4. Videos und Google Werbung in Artikel einfügen?
    Von maxi62 im Forum Allgemeine Inhaltselemente
    Antworten: 1
    Letzter Beitrag: 29.12.2009, 21:11

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •