ich habe eine Instalation mit vielen tt_content Datensätzen,die ihre Daten im Feld pi_flexform gespeichert haben.

Nun soll es eine Änderung in der XML-Struktur (Feld: pi_flexform) geben. damit nicht Tausende von Datensätzen neu eingegeben werden müssen soll es eine Konvertierung geben (bei der evtl. auch mal das XML aufgeräumt werden könnte [1]).

Ich habe schon versucht ein einfaches PHP-Script zu basteln, aber der Versuch mit den XML-Klassen will mir irgendwie nicht so recht gelingen.


bspl:

<T3FlexForms>
  <data>
    <sheet index="options">
      <language index="lDEF">
        <field index="title">
          <value index="vDEF">Überschrift</value>
        </field>
        <field index="text">
          <value index="vDEF">Text</value>
          <value 
index="_TRANSFORM_vDEF.vDEFbase">&lt;p&gt;Text&lt;/p&gt;</value>
        </field>
        :

soll dann z.B. in folgendes gewandelt werden:

<T3FlexForms>
  <data>
    <sheet index="global">
      <language index="lDEF">
        <field index="headline">
          <value index="vDEF">Überschrift</value>
        </field>
      </language>
    </sheet>
    <sheet index="global">
      <language index="lDEF">
        <field index="text">
          <value index="vDEF">Text</value>
          <value 
index="_TRANSFORM_vDEF.vDEFbase">&lt;p&gt;Text&lt;/p&gt;</value>
        </field>
        :

Verschiebung von Feldern in andere Sheets, Umbenennung der Felder, ...

[1] Sobald man den Typ eines CE ändert (und damit die genutzte XML-Struktur) bleiben die alten XML-Werte weiterhin gespeichert, so dass sich nach einigen Änderungen des Typs und der Felddefinitionen einige Feld- und Sheet-Leichen in den XMLs sammeln.

Gibt es irgendwo schon Extensions, die ein entsprechendes Updatescript haben?
Oder andere standalone update-scripte?

Ich bin über jeden Hinweis dankbar.

bernd
--
http://www.pi-phi.de/cheatsheet.html
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an