Unterscheid CMS Element und CMS Block?

Kann mir jemand den Unterschied zwischen einem CMS Element und einem CMS Block erklären? Danke für die Hilfe :slight_smile:

Hallo,

ein „CMS Block“ ist sozusagen die Hülle für ein „CMS Element“. Ein „CMS Element“ kann einen eigenen „CMS Block“ in einer der Block-Kategorien haben, muss es aber nicht, da man ja auch bei einem bereits platzierten „CMS-Block“ über das Wechsel-Icon ein (anderes) CMS-Element platzieren kann.

Grüße
Sebastian

Danke für die Erklärung!
Wenn ich es richtig verstanden habe besteht ein Block aus einem oder mehrere Elementen und Elemente sind dann konfigurierbar.
Bspw. Kann ein Block aus einem Bild und Produkt Element bestehen.

Blöcke sind rein für das Layout zuständig. In den Bereichen der Blöcke kann man beliebige Elemente platzieren. Die Blöcke von Shopware sind mit Elementen vor konfiguriert und haben auch meist den selben Namen wie die Elemente selbst. Das kann ich nicht gut heißen, weil dadurch eine enorme redundanz an Blöcken entsteht - ist aber leider so.

Ich habe in meinem Foundation Plugin einige Layouts beigefügt.

Wer es etwas individueller haben möchte, sollte sich auf jeden Fall mal das anschauen.

Hallo,

genau, „CMS Blöcke“ sind sozusagen nur Platzhalter für „CMS Elemente“. Du kannst beispielsweise einen beliebigen „CMS Block“ aus einer Block-Kategorie auf der Erlebniswelt platzieren und bei diesem im Nachhinein die dargestellten „CMS-Elemente“ über das Wechsel-Icon auch wieder wechseln, ohne jetzt wieder einen neuen „CMS Block“ platzieren zu müssen. Deshalb muss ein „CMS Element“ auch nicht unbedingt eigene „CMS Blöcke“ haben.

Grüße
Sebastian

Hallo,

Danke für die umfangreichen Erklärungen. Vollständig klar ist mir jetzt allerdings noch nicht wie genau die Zuständigkeiten von Blöcken und Elementen abgesteckt sind.

Angenommen ich will ein eigenes Kategorie Layout bauen, mit sowohl Namen der Kategorie als auch einem Text plaziert auf dem Bild. Text und Bild natürlich dann innerhalb der Kategorie pflegbar. (Also background Image reicht nicht ;)).

Ich habe das versucht mit einem CMS-Element zu lösen. Komme aber antsprechend dort nicht weit, da ich es nicht auswählen kann sondern nur in einen bestehenden Block ein- bzw ein element ersetzen kann, was aber dann mit den standard Blöcken nicht richtig funktioniert hat, es wurde mir am Ende nur das Hintergrund-Bild angezeigt, aber nicht der Template Inhalt. Mache ich hier was falsch?

Ich würde als nächsten Schritt einen eigenen Block basteln.
Sehe ich das richtig, dass der Block sozusagen weitestgehend verschiedenen Slots und deren Anordnung regelt. Und die Elemente dann in die Slots gezogen werden können.

Kommt das irgendwie so hin? Weitere Infos oder Erklärungen sind auf jeden Fall hilfreich, falls noch was dazu einfällt :slight_smile:

Block = Anordnung (Layout) der Elemente, keine Anforderungen.
Element = Content und Design der Elemente (Formatierung per CSS), Anforderungen.

Ok, danke, dann verstehe ich es glaub ich schon so ungefähr richtig.

Was meinst du in dem Fall konkret mit Anforderungen?

Habe in deinem Post Anforderungen, anstatt Anordnung gelesen :joy:

Dennoch ist Anforderung nicht falsch. Anforderungen wären Pflichtfelder, z.B. Urls, Bilder, Text, etc. die ein Element beinhaltet kann.

1 „Gefällt mir“

Danke dir :slight_smile: .

Alles klaro, dann bau ich mir mal einen eigenen Block mit einem Slot. Dort setze ich dann ein eigenes Custom Element rein, was ein Bild, ein Textfeld und den Kategorie-Namen beinhaltet, den ich im Template dann hoffentlich zur Verfügung habe.

So müsste es dann funktionieren, oder siehst du da Probleme, Text und Kategorie Namen auf das Bild zu pflanzen und pflegbar zu halten über das Element?
Danke dir, hilft mir sehr weiter gerade