Wie verschiedene CMS's mit Content Blocks umgehen

Avatar of Chris Coyier
Chris Coyier am

DigitalOcean bietet Cloud-Produkte für jede Phase Ihrer Reise. Starten Sie mit 200 $ kostenlosem Guthaben!

Stellen Sie sich einen sehr einfachen Blog vor. Blogbeiträge bestehen nur aus einem Titel und ein oder zwei Absätzen. In diesem Fall ist ein CMS, in dem Sie den Titel und diese Absätze eingeben und veröffentlichen, perfekt. Vielleicht kommen einige Metadaten wie Datum und Autor mit. Ich wage es zu sagen, dass nur Titel- und Inhaltsfelder ein CMS-Anti-Pattern sind. Es ist flexibel, aber verursacht langfristig Schmerzen durch mangelnde Kontrolle durch Abstraktion.

Lassen Sie uns jedoch keine Unterhaltung über CMS's im Allgemeinen führen, sondern dies auf das Problem des Inhaltsbereichs beschränken.

Stellen Sie sich nun vor, wir haben eine Website mit etwas mehr Vielfalt. Wir versuchen, unser CMS zu nutzen, um alle Arten von Seiten zu erstellen. Manche davon sind blogartig. Manche eher wie Landingpages. Diese Seiten werden aus Textteilen, aber auch aus verschiedenen Komponenten aufgebaut. Karten! Slider! Werbung! Zitate!

Hier sind vier verschiedene Beispiele, damit Sie genau verstehen, was ich meine

Ich wette, so etwas kommt Ihnen bekannt vor.

Sie können das absolut schaffen, indem Sie all diese Blöcke in ein einziges Inhaltsfeld packen. Hey, das ist nur HTML! Packen Sie das benötigte HTML für all diese Blöcke direkt in dieses Inhaltsfeld, und es wird tun, was Sie wollen.

Dabei gibt es ein paar signifikante Probleme

  1. Nicht jeder ist ein HTML-Guru. Sie richten vielleicht ein CMS für andere ein, die großartig mit Inhalten, aber nicht so sehr mit Code umgehen können. Selbst für diejenigen, die mit HTML vertraut sind, nutzt dies das CMS nicht optimal. Es wäre zum Beispiel viel einfacher, eine Seite per Drag & Drop neu anzuordnen, als sorgfältig HTML zu kopieren und einzufügen.
  2. Das HTML-in-der-Datenbank-Problem. Sie haben also fünf Seiten mit einem Bildslider. Der Slider erfordert ein spezifisches, verschachteltes, strukturiertes HTML. Packen Sie das in fünf verschiedene Seiten? Dieser Slider wird sich ändern, und Sie möchten ihn nicht fünfmal ändern. Halten Sie Ihr HTML in Vorlagen und Daten in Datenbanken.

Also ... was tun wir? Ich war ehrlich gesagt nicht sicher, wie CMS's damit umgehen. Also habe ich nachgeforscht. Das habe ich gefunden.

In CraftCMS...

CraftCMS hat einen Matrix-Feldtyp dafür.

Ein einzelnes Matrixfeld kann beliebig viele Blocktypen enthalten, aus denen der Autor bei der Erstellung neuer Inhalte auswählen kann. Jeder Blocktyp erhält sein eigenes Feldset.

In Perch...

Perch behandelt dies mit dem, was sie Blocks nennen

In unserer Blogvorlage ist der Hauptteil des Beitrags nur ein großer Bereich für Text. Ihr Redakteur möchte vielleicht einen Beitrag mit Bildern, Videos oder allem anderen erstellen. Wir können ihnen die Möglichkeit geben, zwischen verschiedenen Dingen zu wählen, die sie in ihren Beitrag einfügen möchten, indem wir Perch Blocks verwenden.

In Statamic...

Statamic beschäftigt sich mit dieser Idee mit dem Replicator Meta-Feldtyp

Der Replicator ist ein Meta-Feldtyp, der Ihnen die Möglichkeit gibt, Feldsets zu definieren, die Sie dynamisch in jeder gewünschten Reihenfolge und Anordnung zusammensetzen können.

In WordPress...

Es ist verlockend, hier einfach Advanced Custom Fields zu erwähnen, was hier richtig passt. Ich liebe ACF, aber ich glaube nicht, dass es hier genau dasselbe ist. Obwohl Sie neue benutzerdefinierte Felder erstellen können, müssen Sie diese Daten dann selbst abfragen und auf besondere Weise in Vorlagen ausgeben. Es ist keine Methode zur Handhabung bestehender Inhaltsblöcke.

Etwas wie SiteOrigin Page Builder, das mit dem bestehenden Inhaltsbereich und Widgets arbeitet

Es gibt auch den kommenden Gutenberg-Editor. Er ist für den WordPress-Core bestimmt, aber im Moment ist er ein Plugin. Brian Jackson hat einen guten Artikel darüber. In den Demoinhalten von Gutenberg selbst wird es gut erklärt

Das Ziel dieses neuen Editors ist es, das Hinzufügen von Rich Content zu WordPress einfach und angenehm zu gestalten. Dieser gesamte Beitrag besteht aus Inhaltsstücken – ähnlich wie LEGO-Steine –, die Sie verschieben und mit denen Sie interagieren können. Fahren Sie mit dem Cursor herum und Sie werden bemerken, dass verschiedene Blöcke mit Umrissen und Pfeilen hervorgehoben werden. Drücken Sie die Pfeile, um Blöcke schnell neu zu positionieren, ohne Angst haben zu müssen, dass etwas beim Kopieren und Einfügen verloren geht.

Beachten Sie die verschiedenen verfügbaren Blöcke

In Drupal...

Drupal hat ein Modul namens Paragraphs dafür

Anstatt all ihre Inhalte in einem einzigen WYSIWYG-Body-Feld einzugeben, einschließlich Bilder und Videos, können Endbenutzer nun auf Knopfdruck zwischen vordefinierten Absatztypen wählen, die unabhängig voneinander sind. Absatztypen können alles sein, was Sie wollen, von einem einfachen Textblock oder Bild bis hin zu einer komplexen und konfigurierbaren Diashow.

In ModX...

ModX hat ein kostenpflichtiges Add-on namens ContentBlocks dafür

Das Prinzip des modularen Inhalts bedeutet, dass Sie Ihren Inhalt in kleinere Inhaltsteile zerlegen, die separat verwendet oder verarbeitet werden können. Anstatt eines einzigen Inhalts-Blobs können Sie also eine Überschrift, ein Bild und eine Textbeschreibung festlegen.

Jeder dieser kleinen Inhaltsblöcke hat seine eigene Vorlage, sodass Sie Erstaunliches mit seinen Werten tun können.


Das sind natürlich nicht die einzigen CMS. Wie handhabt Ihres das?