Anlegen von Dateien über CSV-Import

Ab CMS-Version 013.001.052.000 ist ein CSV-Import zum universellen Erstellen von beliebigen Objekten in der Dateiverwaltung verfügbar.

Strukturierte Daten können auf Grundlage einer CSV-Datei und einer Vorlage komfortabel über einen CSV-Import als Dateien angelegt werden. CMS-Version 13 bietet hierfür über den Dateiexplorer eine Schaltfläche und Funktion, wenn bestimmte Voraussetzungen erfüllt sind.

Dateiexplorer: Verzeichnisfunktionen mit CSV-Importzoom
Dateiexplorer: Verzeichnisfunktionen mit CSV-Import
  1. Im Templates-Verzeichnis des aufgerufenen Verzeichnisses muss ein Unterverzeichnis /csvimport mit einer Vorlage bestehen
  2. Innerhalb des aufgerufenen Verzeichnisses muss ein Unterverzeichnis /csvimport mit einer CSV-Datei liegen, welche für den Import herangezogen wird.
 
 

Am Beispiel von Veranstaltungsterminen wird die Umsetzung und Vorgehensweise nachfolgend erklärt.

Verwenden Sie hierzu im Projekt (BASE Classic oder Mobile First) das Weblic® Veranstaltungskalender. Im Beispiel ist dieser unter /base/veranstaltungskalender installiert und die Veranstaltungstermine liegen als Dateien unter /base/veranstaltungskalender/termine ab.

Um die "CSV Importieren" Schaltfläche im Dateiexplorer zum Verzeichnis /base/veranstaltungskalender/termine angezeigt zu bekommen, legen Sie im Templates-Verzeichnis das Unterverzeichnis /csvimport an:

     /base/veranstaltungen/termine/weblication/templates/documents/csvimport

Darin legen Sie die Vorlage ab, welche als Grundlage für die anzulegenden Termine (Dateien) verwendet werden soll, z.B.:

     /base/veranstaltungen/termine/weblication/templates/documents/csvimport/eventMulti.php

Tipp:
Kopieren Sie sich am besten die bestehende Terminvorlage:

     /base/veranstaltungen/termine/weblication/templates/documents/1-vorlage-veranstaltung.php

und fügen diese im neu angelegten csvimport Unterverzeichnis ab.
In dieser Vorlage setzen Sie dann an den gewünschten Stellen (XML-Knoten) die entsprechenden Platzhalter, welche beim Importvorgang durch die Daten aus der CSV-Datei ersetzt werden. Die Platzhalter benennen Sie entsprechend der Spalten-Definition in der CSV-Datei (z.B. [!--title--] für die Spalte title).

Beispiel: Auszug aus der Veranstaltungsvorlage für den Import

...
    <wd:meta>
      <wd:title>[!--title--]</wd:title>
      <wd:description>[!--description--]</wd:description>
      <wd:categories/>
      <wd:keywords>[!--keywords--]</wd:keywords>
      <wd:thumbnail src="" area=""/>
      ...
    </wd:meta>
    <wd:object type="eventMulti">
      <wd:data id="title" type="char.text"/>
      <wd:data id="description" type="char.text"/>
      ...
      <wd:data id="dates" type="entries.text">
        <wd:entry from="[!--dateFrom--]" to="[!--dateTo--]"/>
      </wd:data>
      <wd:data id="text" type="text.standard"><![CDATA[<p>[!--text--]</p>]]></wd:data>
      <wd:data id="enableClickAnalyzer" type="char.default">no</wd:data>
      <wd:data id="category" type="categories.default">
        <wd:category>[!--categoryID1--]</wd:category>
        <wd:category>[!--categoryID2--]</wd:category>
      </wd:data>
      <wd:data id="location" type="char.default">
        <wd:category>[!--locationCategoryID--]</wd:category>
      </wd:data>
      ...     
    </wd:object>
    <wd:status>
      <wd:online from="" status="off" to="" statusDraft="on"/>
      <wd:type value=""/>
    </wd:status>
...

Legen Sie nun die CSV-Datei im Unterverzeichnis der Termine ab, im Beispiel also:

     /base/veranstaltungen/termine/csvimport/events.csv

Die Auswahlbox für die zu importierende CSV-Datei bietet Ihnen die CSV-Dateien in diesem csvimport-Verzeichnis zur Auswahl an. Wählen Sie dort die abliegende CSV-Datei (z.B. events.csv) und die Objektvorlage, um danach den Importvorgang durch Klick auf die Schaltfläche "CSV Importieren" zu starten.

CSV Importieren Maskezoom
CSV Importieren Maske
CSV Importieren Maske - importiertzoom
CSV Importieren Maske - importiert
 

Wenn Sie die Dateivorlage (hier: eventMulti.php) im Online-Status offline belassen, werden die Termine erstmal mit diesem Status angelegt und sind somit nicht sofort online verfügbar. Inhaltsanpassungen, Korrekturen und Ergänzungen können Sie somit im Nachgang des Imports einpflegen und die Datei online schalten, wenn alles eingepflegt ist.

Ein Beispiel für eine CSV-Datei finden Sie nachfolgend. Achten Sie darauf, daß diese CSV-Datei UTF-8 kodiert abgespeichert ist.

Beispiel: CSV-Datei für den Import von Veranstaltungsterminen

title;description;keywords;locationCategoryID;categoryID1;categoryID2;dateFrom;dateTo;text
Örtlicher Volkslauf;Lauf durch die Innenstadt von Bremburg;bremburg, stadt, lauf;678677678377;678677678377;647503647503;2018-07-28 08:30:00;2018-07-28 12:30:00;Ein Lauf für die ganze Stadtbevölkerung. Jung und alt ist dazu eingeladen und trifft sich um 8:00 Uhr am Stadtbrunnen.
Bremburger Sommerferienspaß;Aktionen für Kinder und Jugendliche während der Sommerferien;bremburg, sommerferien, 2018;678677678377;647503647503;;2018-07-27 08:00:00;2018-09-07 12:00:00;Auch im Jahr 2018 bietet die Stadt Bremburg den Kindern und Jugendlichen wieder zahlreiche Aktionen und Aktivitäten während der Sommerferien an.

Ähnliche Seiten

Entwicklerbereich Weblication® CMS - © Scholl Communications AG