Ergebnis 1 bis 9 von 9

Thema: CSV-Import 2-sprachig in MetaModels

  1. #1
    Contao-Fan
    Registriert seit
    01.11.2013.
    Beiträge
    644

    Standard CSV-Import 2-sprachig in MetaModels

    Liebe Gemeinde,

    ich muss eine Produktliste mit ca. 2000 Produkten erstellen, dafür scheint mir MetaModels ja wie angegossen zu sein.

    Die Produktattribute würde ich gerne via CSV importieren, weiters müssen die Datensätze 2-sprachig sein.
    Ist das bereits problemlos möglich?

    Hab natürlich schon vom Tabimporter gelesen, doch dieser wird scheinbar leider nicht mehr weiterentwickelt...

    Vielen Dank,
    lg

  2. #2
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.758
    User beschenken
    Wunschliste

    Standard

    * Beispieldatensatz in MM anlegen
    * per myPhpAdmin exportieren
    * per Excel ein oder zwei CSV erzeugen (habe mir das mit dem Mehrsprachig noch nicht angesehen)
    * CSV per myPhpAdmin importieren

    => Zeit 1/2 bis 1h ;-)

  3. #3
    Contao-Fan
    Registriert seit
    01.11.2013.
    Beiträge
    644

    Standard

    Vielen Dank für die Erklärung!

    Vielleicht kann mir jemand noch die Frage zur Mehrsprachigkeit beantworten:
    Muss ich da einfach in der csv-Datei entsprechende Felder für englischsprachige Attribute vorsehen oder wie funktioniert das?

  4. #4
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.758
    User beschenken
    Wunschliste

    Standard

    * Beispieldatensatz in MM anlegen
    => und nachsehen

  5. #5
    Contao-Fan Avatar von Thraile
    Registriert seit
    17.12.2009.
    Ort
    Detmold
    Beiträge
    501
    Partner-ID
    6306

    Standard

    Und dann feststellen, dass die übersetzen Attribute ihre Werte nicht in der mm_products Tabelle abspeichern sondern irgendwo unter tl_metamodels_translatedXXX

    Du wirst dir wohl ein Import-Script brauchen (siehe auch hier: https://community.contao.org/de/show...ore-Funktionen), welches für jede Sprache einmal die Werte richtig setzt.

  6. #6
    Contao-Fan Avatar von WilhelmTell
    Registriert seit
    12.12.2014.
    Beiträge
    316

    Standard

    Zitat Zitat von gm-team Beitrag anzeigen
    oder wie funktioniert das?
    Vielleicht hilft Dir dies hier etwas weiter:
    https://community.contao.org/de/show...l=1#post366665

  7. #7
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.758
    User beschenken
    Wunschliste

    Standard

    ich habe aktuell keine übersetzten Inhalte um mir die Sache anzusehen... aber tl_metamodels_translatedXXX wird sicher eine Referenzspalte mit der id zu mm_meinetabelle haben - oder?

    man könnte in mm_meinetabelle eine Hilfsspalte zur Identifizierung einbauen und nach dem Einspielen der tl_metamodels_translatedXXX-Daten ein "Update-SQL" machen, welches die korrekte ID aus mm_meinetabelle einsetzt

  8. #8
    Contao-Fan Avatar von Thraile
    Registriert seit
    17.12.2009.
    Ort
    Detmold
    Beiträge
    501
    Partner-ID
    6306

    Standard

    In den translated Tabellen steht immer die ID des Attribute, die ID des Datensatzes aud der mm_meinetabelle, die Sprache und dann das Value. Die Daten per SQL irgendwie selbst in die Datenbank zu bekommen machte echt keinen Spaß. MM macht das ja schon alles für einen, mann muss sich nur das Objekt suchen, die Werte setzen und dann speichen - natürlich für jede Sprache einmal.
    PHP-Code:
    //Sprache Setzen
    $GLOBALS['TL_LANGUAGE'] = 'fr';
    // Befüllen mit Attribut text
    $ObjItem->set('Feldname'$Wert);
    // Befüllen mit Attribut translatedtext
    $ObjItem->set('Feldname', array('value' => $Wert));
    // Befüllen mit Attribut url
    $ObjItem->set('Feldname', array($Name$URL));
    // Speichern
    $ObjItem->save(); 
    Wenn man die CSV geschickt aufbaut, kann das Script sogar erkennen welche Spalte für welche Sprache gültig ist. Bei uns sah die Kopfzeile dann mal so aus (gekürzt):
    Code:
    country,c::title::de,c::title::en,c::title::fr,c::title::ru,c::city::de,c::city::en,c::city::fr,c::city::ru,address,phone,fax,mobile,mail
    Die Felder mit ohne "::" wurden 1:1 auf die Attributsnamen gemappt, bei den "C"complexen ist halt neben dem Attributsnamen noch die Sprache mit hinterlegt. Ich hoffe das war irgendwie verständlich.

  9. #9
    Contao-Fan
    Registriert seit
    01.11.2013.
    Beiträge
    644

    Standard

    Danke für eure Antworten.

    Am besten ich teste alles am Wochenende ausgiebig und melde mich einfach nochmal falls Probleme auftreten.
    Die anderen Threads sind auch sehr hilfreich.

Aktive Benutzer

Aktive Benutzer

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

Lesezeichen

Lesezeichen

Berechtigungen

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