Public
Authored by Administrator

Migration kb_nescefe > gridelements

Aufbau kb_nescefe

Es gibt eine Tabelle „tx_kbnescefe_containers" in der die zu einem Layout passenden Front- und Backenlayouts gespeichert sind.

Die Container befinden sich in der tt_content-Tabelle und haben den list_type „kb_nescefe“. In der Spalte „container“ befindet sich die uid des tx_kbnescefe_containers-Datensatzes der verwendet werden soll. SQL:

SELECT pid, uid, container, parentPosition FROM tt_content WHERE list_type="kb_nescefe_pi1" AND deleted=0 AND hidden=0

Inhaltselemente die sich innerhalb eines Containers befinden haben einen Eintrag in der tt_content-Spalte „parentPosition“: Z.B.: „7439__1" „__1“ bestimmt die Spalte in der sich der Inhalt befindet (im Beispiel Spalte 1). Die Sortierung innerhalb des Containers erfolgt mit der Spalte „sorting“. SQL:

SELECT pid, uid, sorting, parentPosition, container FROM tt_content WHERE parentPosition !="" AND deleted=0 AND hidden=0

Aufbau gridelements

Es gibt eine Tabelle „tx_gridelements_backend_layout“ in der die zu einem Layout zugehörende TypoScript-Konfigurationen gespeichert sind.

Die Container befinden sich in der tt_content-Tabelle und haben den CType „gridelements_pi1". In der Spalte „tx_gridelements_backend_layout“ befindet sich die uid des tx_gridelements_backend_layout-Datensatzes der verwendet werden soll. SQL:

SELECT * FROM tt_content WHERE CType="gridelements_pi1" AND deleted=0 AND hidden=0

Inhaltselemente die sich innerhalb eines Containers befinden haben neben der colPos „-1" einen zum TypoScript passenden Eintrag in der tt_content-Spalte „tx_gridelements_columns“. In der Spalte „tx_gridelements_container“ steht zudem die uid des zugehörigen Containers. Die Sortierung innerhalb des Containers erfolgt mit der Spalte „sorting“.

Portierung:

Entsprechende Gridelements im Backend anlegen.

Bestehende Container-Elemente umwandeln:

UPDATE tt_content SET CType="gridelements_pi1", list_type="" WHERE list_type="kb_nescefe_pi1"

Jedem Ex-kb_nescefe-Container den zugehörigen gridelements-Container zuweisen:

UPDATE tt_content SET tx_gridelements_backend_layout=X WHERE container=Y

X = uid des tx_gridelements_backend_layout-Datensatz Y = uid des tx_kbnescefe_containers-Datensatzes

Jedem Inhaltselement das in einem Container steckt die entsprechenden Einstellungen zuweisen:

UPDATE tt_content SET colPos=-1, tx_gridelements_columns = SUBSTRING_INDEX(parentPosition, "__", -1) + 101, tx_gridelements_container = SUBSTRING_INDEX(parentPosition, "__", 1) WHERE parentPosition != ""

101 = Die (erste) colPos die im TypoScript des jeweiligen Gridelements eingetragen ist. Laut Beispiel wird hier die ursprüngliche Spalte 0 auf die colPos 101 gemappt.

15 Bytes
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment