Search by

heimseiten / contao-paste-into-nested-elements-bundle

heimseiten.de - Webdesign aus Köln

Rüstet das Contao-6-Feature „In verschachtelte Elemente einfügen“ für Contao 5.7 nach: Inhaltselemente lassen sich aus der Artikelübersicht heraus direkt in eine Elementgruppe einfügen, ohne vorher deren Kindansicht zu öffnen.

Package info

github.com/heimseiten/contao-paste-into-nested-elements-bundle

Type:contao-bundle

pkg:composer/heimseiten/contao-paste-into-nested-elements-bundle

Statistics

Installs: 3

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

1.0.0 2026-08-27 11:44 UTC

This package is auto-updated.

Last update: 2026-08-27 11:57:15 UTC


README

Rüstet das Contao-6-Feature „In Nested-Elements einfügen" für Contao 5.7 nach.

Inhaltselemente lassen sich damit direkt aus der Übersicht eines Artikels in eine Elementgruppe einfügen — ohne deren Kindansicht vorher zu öffnen. Ablauf wie gewohnt: Element über Kopieren oder Verschieben in die Zwischenablage legen, dann am Zielelement auf Einfügen klicken.

Wo der Knopf erscheint

An jedem Element, das Kindelemente aufnehmen kann, und nur bei gefüllter Zwischenablage. Welche Elemente das sind, beantwortet der FragmentCompositor des Kerns — also alles, was mit #[AsContentElement(nestedFragments: true)] ausgezeichnet ist. Im Kern sind das Elementgruppe, Akkordeon und Slider; Elemente aus anderen Erweiterungen werden ohne Zutun mit erfasst, weil hier keine Liste von Elementtypen gepflegt wird.

Ein Element lässt sich nicht in sich selbst oder in eines seiner Kindelemente verschieben — in dem Fall erscheint der Knopf abgeblendet.

Was die Erweiterung nicht tut

Die Darstellung der Listen bleibt unverändert. Ergänzt wird ausschließlich der fehlende Knopf.

Unterschied zu Contao 6

Contao 6 fügt am Ende der Zielgruppe an. Diese Erweiterung fügt am Anfang ein, weil Contao 5.7 dafür nur PASTE_INTO kennt; das Gegenstück PASTE_INTO_APPEND kam erst mit Contao 6. Die Reihenfolge lässt sich anschließend wie gewohnt per Ziehen ändern.

Der Knopf sitzt außerdem am Ende der Operationen einer Zeile, während Contao 6 ihn direkt neben Danach einfügen setzt. Diese Stelle im DC_Table ist in Contao 5.7 nicht erweiterbar, ohne Kerncode zu kopieren.

Wie es funktioniert

Die Einfüge-Mechanik bringt Contao 5.7 bereits mit: mode=2 fügt in einen Datensatz ein, und der Parameter ptable wird für selbstreferenzierende Tabellen ausgewertet (DC_Table::getPtable(), „nested elements case"). Es fehlt allein der Knopf, der diese Adresse aufruft — deshalb kommt die Erweiterung ohne Eingriff in den Kern aus und registriert lediglich eine zusätzliche Zeilen-Operation.

Beschriftung und Symbol stammen ebenfalls aus dem Kern (DCA.pasteinto, pasteinto.svg).

Voraussetzungen

PHP 8.3+, Contao 5.7

Lizenz

GPL-3.0-or-later