Wie funktioniert die API des Flat File CMS Bludit?

Was ist die Bludit API und zu was kann sie verwendet werden. So rufen Sie Content aus dem CMS Bludit für die Darstellung in anderen Webseiten auf.

Juli 5, 2023 - Lesezeit: 6 Minuten

Inhalt

Was ist eine API in Bludit?

Die Bludit API (Aplication Programming Interface) übergibt spezifischen Seitencontent an einen externen Aufrufer zurück, dabei handelt es sich um einen strukturierten Datenkontainer im json-Format, den der Request an den Aufrufer zurück sendet. Der Aufrufer muss den erhaltenen Daten-Kontainer im externen System (das kann beispielsweise eine andere Domain mit anderem CMS sein) enteprechend für die dortige Anzeige aufbereiten. Die Bludit API ist in der Lage, Content für die Anzeige auszuliefern, wie auch neue Seiten zu erstellen oder bestehende zu löschen - all dies erfolgt über einen entfernten Aufruf gegen das Bludit CMS, ohne das dabei ein Redakteur oder Admin im Backend angemeldet sein muss.

Klingt doch genial oder? Und genau das ist es auch...

API Plugin aktivieren

Damit Sie die API Schnittstelle im Content Management System Bludit nutzen können, müssen Sie das Bludit Plugi API im Backend aktivieren. Bei dessen Aktivierung erhalten Sie zudem einen Api-Key (Token), den Sie bei jeder Anfrage an das CMS mit übergeben müssen, er stellt eine Art Passwort dar, um externe Zugriffe identifizieren und erlauben zu können.

Seiten mit der Bludit API abrufen

Wenn Sie das API-Plugin aktiviert haben, können Sie die Funktion genz simpel testen. Geben Sie die folgende URL im Browser ein und Sie erhalten ein JSON-Array mit 14 Seiten aus dem Bludit CMS als Rückgabe bzw. als Anzeige im Browserfenster.

https://www.cmsworkbench.de/api/pages?token=123456789&numberOfItems=14

Als Ergebnis liefert das Bludit CMS dem Aufrufer ein JSON-Array der 14 ersten Seiten in der DB des Content Management Systems zurück.

Bludit API Call Bludit CMS API Call

Den empfangenen Response, können Sie dann im rufenbden Zielsystem via PHP oder JavaScript (oder andere) weiter aufbereiten oder in anderen Systemen zur Anzeige bringen. Sie müssen aber die Daten unbedingt verarbeiten, damit der Leser nicht mit den Rohdaten in Kontakt kommt (zumindest wäre das sehr sinnvoll).

Eine bestimmte Seite mit der Bludit API abrufen

Möchten Sie jedoch nur eine Seite abfragen dann müssen Sie die folgende URL nutzen:

https://www.cmsworkbench.de/api/pages/impressum?token=123456789

Im letzten Beispiel erhalten Sie ein Array-Objekt mit dem Dateninhalt der Seite Impressum (Sie müssen natürlich den API-Token durch einen validen Key Ihres Bludit CMS ersetzen, denn der hier verwendete Key 123456789 ist nur ein Beispiel).

Parameter der Bludit API

Dabei haben die Teile der URL die folgende Bedeutung:

  • www.cmsworkbench.de/
    • die URL des Quellsystems das abgefragt wird.
  • api/
    • start des API-Plugins durch den externen Aufrufer, zum Beispiel aus einem anderen CMS-System einer Ihrer anderen Webseiten.
  • pages/
    • der so genannte Endpoint liefert in diesem Fall alle Seiten des Blog, kann aber auch eine bestimmte Seite zurückgeben. Der Name ist fest vorgegeben und nicht änderbar. Die API unterscheidet zwischen pages/ und pages
  • token="..."
    • der Token den Sie im Backend bei Aktivierung der API erhalten haben, er wird bei jeder Aktivierung der API neu erstellt, folglich ändert er sich, wenn Sie die API abschalten und später erneut aktivieren möchten.
  • numberOfItems="..."
    • legt fest, wie viele Seiten an den Aufrufer ausgeliefert werden sollen. Bedenken Sie bitte, das hohe Werte sehr viel Wartezeit beim Aufrufer verursachen können.

Mit JavaScript auf die API zugreifen und Inhalte als HTML-Seite anzeigen

Das folgende Beispiel ist in JavaScript erstellt und greift über die API-Schnittstelle auf einen konkreten Beitrag zu, empfängt die Daten und baut daraus ein neues HTML-Dokument zusammen (den folgenden Code finden Sie oben als fertigen Download).

001  <html>
002     <title>Bludit-API</title>
003      <head>
004        <meta charset="utf-8">
005          <meta name="viewport"  content="width=device-width, initial-scale=1">
006          <meta name="author"    content="Oliver Lohse">
007      </head>
008  
009  <body>
010     <h1 id="title">      </h1>
011     <p  id="description"></p>
012     <p  id="content">    </p>
013  </body>
014  
015  <script>
016     //var req = "https://www.cmsworkbench.de/api/pages?token=123456789&numberOfItems=14";
017     var req = "https://www.cmsworkbench.de/api/pages/was-ist-die-bludit-api?token=123456789";
018     var request = new XMLHttpRequest();
019  
020     request.open("GET",req);
021     request.addEventListener('load', function(event) {
022             if (request.status >= 200 && request.status < 300) {
023             console.log(request.responseText);
024             var obj = JSON.parse(request.responseText);
025             document.getElementById('title').innerHTML       = obj['data']['title'];
026             document.getElementById('description').innerHTML = obj['data']['description'];
027             document.getElementById('content').innerHTML     = obj['data']['content'];
028             
029             } else {
030             console.warn(request.statusText, request.responseText);
031             }
032     });
033     request.send();
034  </script>
035  </html>

Führen Sie diese HTML-Seite in Ihrem Browser aus, dann sendet das Script den Request zum Bludit CMS und empfängt von dort die Daten dieses Artikels und zeigt eine HTML-Seite mit den Inhalten an.

Die Inhalte des empfangenen Datenkontainers, werden in Zeile 024 als json.Objekt formatiert und können dann anhand des Key:Value in den Zeilen 025, 026 und 027 in die Elemente in den Zeile 010 ... 011 eingesetzt werden.

Das JavaScript im Beispiel oben, stellt einen Request für einen einzelnen bekannten Post an die Bludit API. Wollen Sie mehrere Seiten mit einmal auslesen, dann sollten Sie Zeile 017 gegen Zeile 016 tauschen, zudem benötigen Sie dann eine Schleife, um durch das erhaltene json-Array die einzelnen Seiten iterieren zu können.

Bludit API Call mit JS Bludit CMS API Call mit JavaScript und Aufbereitung der Daten als HTML-Seite (nicht hübsch, funktioniert aber)

Das entstandene HTML-Dokument ist eine ganz normale HTML-Webseite, Sie müssen lediglich den Style mit ein wenig CSS oder einem CSS Framework aufhübschen - das ist alles.

Was ist der Vorteil der API in Bludit

Die meisten Webseiten verwenden ein monolitisches CMS, in diesem ist das Frontend mit den Daten fest verbunden. Möchten Sie jetzt das Frontend bzw. das CMS wechseln (vielleicht müssen Sie es sogar mal wechseln), dann müssen Sie das vollständige System inklusive des Datencontent austauschen - Sie müssen alles in das neue System aufwändig migrieren. Die Datenmigration ist oft sehr risikoreich, denn nicht jeder Inhalt lässt sich in andere Formate umwandeln oder manchmal gehen Inhalte auf Grund des hohen Arbeitsaufwandes einfach nur verloren.

Nutzen Sie jedoch das Bludit als reines Content Management System, als Datenbank und als Headless-CMS, können Sie jedes fast beliebige Frontend nutzen und können immer auf die Daten zentral zugreifen ohne diese jemals migrieren zu müssen. Sie können den Content sogar auf verschiedenen Webseiten mit verschiedenen Frontend-Layern präsentieren und werden dabei aus einer und der selben Datenbankquelle zentral gespeist. Diese Technik verringert das Risiko des Datenverlustes bei Migration und erhöht die Geschwindigkeit Ihrer Arbeit. Und nicht zu vergessen, es verbessert die Stabilität Ihres Contents und dessen Haltbarkeit.

Bludit API Dokumentation

Zwar wird hier im speziellen die API des Content Management Systems Bludit besprochen aber grundsätzlich funkionieren die APIs anderer CMS oder headless CMS ganz ähnlich - der Aufrufer erhält meist einen Datenkontainer den er selbst entsprechend aufbereiten muss. Die Unterschiede liegen dann in Details, Strukturen oder verwendeten Programmiersprachen aber die wesentliche Arbeitsweise einer solchen API ist gleich.

Tipp: Bauen Sie sich doch mit dieser Technik eine Affiliate Datenbank auf, deren Affiliate Produkte über einen API-Zugriff in verschiedenen Webseiten angezeigt werden kann. Damit erhalten Sie eine zentrale Basis für die Pflege aller Ihrer Affiliate-Links in Ihren unterschiedlichen Domains.

Sicherheitstipp: Natürlich wird der API-Token für den Leser im JavaScript Code sichtbar, wenn er sich den Quelltext der HTML-Seite ansieht, jedoch kann er mit diesem Token keine Seiten löschen oder neuen Content erzeugen, für diesen Zweck ist ein weiterer Token erforderlich.

Schlagworte:

API

Beiträge in der Kategorie "Bludit":

Zeigen Sie mit diesem Coding den Avatar, eMail, Nickname oder andere Benutzer und Autordaten im Beitrag an.

Mit diesem praktischen Affiliate-Plugin für das Bludit CMS verwandeln Sie Ihre Webseite in eine einfache Geldmaschine

So setzen Sie ein bereits installiertes Bludit CMS, ohne erneuten Upload, auf die Werkseinstellungen zurück und starten die Installation neu.

Der Beitrag zeigt Ihnen einige Verbesserungen am beliebten Bludit Theme DEVTHEME

Flatfile CMS erfreuen sich großer Beliebtheit und bieten zudem sehr viele Vorteile die Sie so kaum von den Platzhirschen am Markt erwarten dürfen.

Dieses Bludit Plugin konvertiert aller Bludit Beiträge in das MarkDown Format und die Ordnerstruktur des Pico CMS, legen Sie lediglich die Index.md an

Was ist die Bludit API und zu was kann sie verwendet werden. So rufen Sie Content aus dem CMS Bludit für die Darstellung in anderen Webseiten auf.

Teil 2 - dieser Beitrag zeigt Ihnen das vollständige Coding, wie das CMS Bludit anhand von Tags verwandte Beiträge anlisten kann und als Vorschläge anzeigt.

Teil 1 - Mit wenigen Handgriffen zeigen Sie verwandte Beiträge unter dem Post an. Dank der exzellenten Dokumentation des Bludit-Projektes fast ein Kinderspiel.

Der Umzug mit dem Bludit CMS gestaltet sich einfach. Der Beitrag zeigt die wenigen Schritte die für den Umzug der Domain auf eine neue Adresse nötig sind.

Die Funktion Beiträgen einen Leitartikel zu geben, gibt es schon sehr lange in Bludit, jedoch war die Anzeige im Theme "Alternative" nicht möglich.

Das Bludit Theme TYPERITE ist vielversprechend, da es ein Optimum an Customizing ermöglicht. Entfernen Sie das Branding aus dem Footer - das ist erlaubt.

Der TinyMCE läuft nicht im Standardmode, statt dessen ist der MarkDown Parser aktiviert. Diese Meldung erhalten Sie oft wenn JavaScripte in Plugins stören.

Laden Sie Themengebundene Logos und Bilder mit Hilfe der Helper Klasse Theme oder der Konstante DOMAIN_THEME des CMS Bludits. Das ist die bevorzugte Variante.

Wenn Sie Bludit-Themes und Templates entwickeln dann können Sie dem Leser die Möglichket geben das Theme live umzuschalten für den ersten Eindruck.

Mit diesem Coding können Sie verschiedene Templates starten, jenachdem ob der Leser eine Seite, Kategorie, home oder Tag wählt. Bludit kennt vier Seiten-Typen

Aus Sicherheitsgründen akzeptiert das CMS Bludit nicht alle Dateitypen zum Upload. Als Single-User im CMS, können Sie weitere Dateitypen freischalten.

Möchten Sie einen zweiten Slogan im CMS Bludit implementieren, dann hilft dieses Plugin. Sie benötigen keinen freien Hook und rufen es manuell im Theme auf.

Ein einfaches SEO-Plugin für Bludit CMS zu Überwachung der SEO-Eigenschaften aller Beiträge. Beitrags-Titel und die Beschreibung werden ausgewertet.

In diesem Beitrag zeige ich Ihnen ein SEO-Plugin für das Admin Backend, das in der Lage ist den Beitragstitel und die Metadescription zu überwachen.

Lassen Sie sich im Bludit Backend die wichtigsten SEO Informationen zu Länge des Titels und der Beschreibung anzeigen. Passen Sie die Datei content.php an.

Das senden des so genannten X-Powered Header kann in Bludit für ein schlechteres Ranking sorgen, zudem ist es nicht ratsam, das verwendete CMS aufzudecken

Aktivieren Sie den Seiten Paginator auch für das Theme Alternative, um beizu viel angezeigten Beiträgen auf die nächste Seite blättern zu können.

Schlagwörter und Tags sind hilfreich und beliebt. Dieser Beitrag zeigt Ihnen, wie Sie diese in den beiden Templates BlogX und Alternative einschalten.

Aktivieren Sie die Anzeige von Schlagwörtern im Bludit Theme Alternative. Damit ist das vorinstallierte Template deutlich aufgewertet und funktionaler.

In individuellen CMS Anpassungen kann der Sanitizer etwas hinderlich sein, da er viele HTML-Formate entfernt. Deaktivieren Sie die Funktion in SingleUser Blogs.

Das entfernen von HTML-Eingaben in SingleUser Blogs kann hinderlich sein, da sie die Kreativität etwas drosseln, entfernen Sie diese Funktionen ganz einfach

Wenn Sie die Quicklinks im Bludit CMS Dashboard stören, können Sie diese ganz einfach in der View dashboard.php des Admin Backends deaktivieren oder entfernen

Natürlich können Sie im CMS Bludit Plugins auch manuell ohne Hook aufrufen, denn nicht immer stehen Hooks zur Verfügung oder sind mit anderen Plugins belegt

Ein hochwertiges Affiliate und CTA Plugin für Bludit, mit beqemer Eingabemaske im Admin-Backend für vier Affiliate und CTA einblendungen im Hook pageBegin().

Die Entwicklung eines Plugins für das CMS Bludit ist einfach. Der Beitrag zeigt Ihnen Schritt für Schritt wie Sie vorgehen müssen um an Ihr Ziel zu gelangen.

Inhaltsverzeichnisse in Beiträgen haben hohe SEO Wirkung. Dieses Bludit Plugin erzeugt für jeden Beitrag ein Inhaltsverzeichnis vor dem Beitragstext.

Dieser Beitrag zeigt Ihnen, wie Sie im CMS Bludit den Kategorie-Link (oft auch Permalink oder Slug genannt) zu einem Kategorie-Namen ermitteln können.

Zeigen Sie im Bludit Theme "Alternative" die Metadaten wie Datum und Uhrzeit der Erstellung des Beitrags an. Es sind nur vier einfache Codezeilen

Aktivieren Sie den wichtigen Anleser für Ihre Beiträge mit dem folgenden kleinen und leichten Codeschnipsel für die page.php des ausgewählten Theme.

Der Bludit Media-Manager steuert die Bildforschau wenn Sie Bilder und Fotos in einen Artikel einfügen möchten. Erweitern Sie die bisher fünf Zeilen auf neun.

So aktivieren Sie den integrierten und deutlich einfacheren Markdown-Parser des Bludit CMS und schalten die visuellen Editoren TinyMCE und EasyMDE ab.

Nach der Installtion des CMS Bludit können Sie das Admin Backend aufrufen, um eigenen Content zu erzeugen - melden Sie sich mit dieser URL am Blog an

Bauen Sie eine Listbox, Auswahlliste bzw Combobox als Bludit Custom field und erweitern die Funktionen der hilfreichen Benutzerfelder für Beiträge und Posts.

Im Admin Backend von Bludit können Sie die Einstellungen für den Seiten Paginator vornehmen. Benötigen Sie eigene Werte, dann nehmen Sie diese Anpassung vor.

Möchten Sie Bilder in Bludit CMS an einer zentralen Stelle speichern oder im Ordner des jeweiligen Beitrags, dann sollten Sie diese Einstellungen vornehmen.

Wenn Sie das Bludit-Plugin Contact3 nutzen, können Sie in diesem Plugin eine einfache und wirkungsvolle Blackliste einbauen, die den Inhalt Ihrer Mail prüft

Ein wenigen Schritten installieren Sie ein Bludit Plugin aus dem Internet auf Ihrer eigenen Webseite. Der Beitrag zeigt wie das geht und was benötigt wird

Soll Ihr Plugin auf Events im Admin-Backend reagieren, dann müssen Sie es an einen Admin Controller hängen, um Daten im Backend verarbeiten zu können.

So steuern Sie die Templatevorgabe in Beiträgen mit dem CMS Bludit. Sie können den Tamplatenamen bei der Erstellung von Beiträgen im Backend angeben.

Machen Sie eigene Anzeigen im Notification Panel des Bludit Dashboards. Nutzen Sie den $syslog-Dienst des CMS, um Events oder Checks aus Plugins zu zeigen.

In diesem Bludit Tutorial zeige ich Ihnen wie Sie einen Edit-Button im Frontend einblenden, sofern Sie angemeldet sind, um Beiträge sofort editieren zu können

Bludit ist das beliebteste Flatfile CMS im Web und belegt im Segment der datenbanklosen CMS einen der ersten Spitzenplätze. So einfach richten Sie das CMS ein.

Sie müssen kleine Anpassungen vornehmen, wenn Sie mit Ihrem bisherigen Bludit-Content auf eine neue Domain umziehen. Dieser Beitrag zeigt wie einfach es geht.

Nutzen Sie die Plugin-DB db.php, um individuelle Daten Ihres Plugins zu speichern und lesen diese für die spätere Verarbeitung durch das CMS Bludit aus.

Aus Sicherheitsgründen, sollten Sie die bekannte Standard Admin-URL unkenntlich machen oder verstecken, denn jeder Besucher kann den Admin-Login aufrufen.

Nutzen Sie die de_DE.json Sprachdatei als Ablageort für SVG-Icons im Template. Der Beitrag zeigt Ihnen, wie Sie diese Icons aus dem Template laden und anzeigen

So können Sie das freie Feld TEMPLATE in den Beitragseinstellungen verwenden. Fragen Sie es mit dem folgenden Coding des Beitrags ab und steuern das Templating

Mit den so genannten Custom Fields können neue Attribute der Content Datenbank in jedem Beitrag hinzufügen und auslesen wenn Sie einen neuen Post schreiben

Sie können das Standard CSS des Bludit Theme mit eigenen Definitionen überschreiben. Dazu sollten Sie das Plugin HTML-Code aktivieren und Styles eintragen.

Blenden Sie das Kontaktformular Plugin Contact3 immer oben auf der Kontaktseite ein. Durch die Änderung des so genannten Hook ist dies einfach möglich.

Standardmäßig wird neben der Kategorie die Anzahl enthaltener Artikel gezeigt. Dies kann etwas nerven und stört das Layout, schalten Sie die Funktion ab

Das Bludit CMS ist Multiuserfähig und kann drei Rollen verwalten. Es kann sinnvoll sein, die Rolle Autor dazu zu zwingen, Beiträge als Entwurf zu speichern.

Mit diesem Code, können Sie eine ganz einfache Beitrags-Statistik erstellen und in einem Log-File speichern. Ermitteln Sie welcher Beitrag wie oft gelesen wird

Arbeiten Sie in Bludit mit Seitennavigationen, dann kann die Abfrage der aktuellen Seite durchaus hilfreich sein. So fragen Sie diesen Wert der Seite ab.

Legen Sie mit Hilfe der Benutzerfelder ein Kennzeichen zu jedem Bludit Beitrag an, ob dieser eine Werbung oder einen Affiliate anzeigen soll oder nicht

Kategorien

Automad

Das kostenlose Flat File CMS Automad bietet bereits nach der Installation auf dem Server das beste Layout unter allen CMS am Markt.

Bludit

Das kostenlose Flatfile CMS Bludit ist das beliebteste Content Management System, das dem großen WordPress sehr nahe kommt, jedoch deutlich mehr Sicherheit bietet.

CMS

In dieser Rubrik geht es um übergreifenden Themen aus dem Bereich der Content Management Systeme.

Coast

Coast ist ein CMS aus deutscher Feder und ist mit einem exzellenten HTML/PHP Frontend-Editor zu vergleichen, die Daten werden direkt in der HTML-Datei gespeichert.

GetSimple

Das kostenlose Content Management System GetSimple verspricht genau das, was der Name andeutet, ein stabiles Flat File CMS auf der Basis von XML-Dateien.

GRAV

Das kostenlose Content Management System GRAV gehört zu den komplexesten CMS, da es den größten Funktionsumfang mitbringt.

Handlebars.JS

Handlebars.js ist eine kostenlose JavaScript Template-Engine mit der einfache Webseiten oder Prototypen leicht und schnell erzeugt werden können.

htaccess

Die .htaccess ist die wohl wichtigste und mächtigste Datei, über die der Server seinen Umgang mit den Daten und Besuchern steuert.

Java

Java ist die strategische Programmiersprache für verteilte Anwendungen im Internet oder auch in der Client-Server Architektur und sogar auf dem Host.

Monstra

Das CMS Monstra ist ein überaus gelungenes und sauber entwickeltes CMS mit Admin-Backend und Flat File Datenbank.

PHP

PHP ist die strategische Programmiersprache des Internets, mit PHP geht alles und ohne PHP nichts! Allerdings ist PHP nicht auf lokalen Client-Umgebungen verbreitet (aber möglich).

Pico

Das CMS Pico ist derzeit das ausgereifteste und einfachste headless CMS für den Einsatz großer Mengen an MarkDown-Files (Content).

Smarty

Smarty ist eine Template-Engine auf Basis der Programmiersprache PHP und ist in der Lage HTML-Vorlagen (Templates) dynamisch mit Content zu versorgen.

Typemill

Typemill ist zunächst ein ganz normales Flat File CMS, entfaltet jedoch sein wahres Potenzial mit einigen besonderen Plugins, die es zum kraftvollen Publishing-Tool macht.

WonderCMS

WonderCMS ist das mit Abstand kleinste CMS das es derzeit kostenlos gibt. WonderCMS kommt mit einem PHP-Script und einer JSON-Datenbank aus und bietet ein Backend.

WordPress

Das datenbankbasierte Content Management System WordPress ist das beliebteste CMS und hält die meisten Installationen - ist allerdings auch das am meisten attackierte System.

Derzeit sind noch keine passenden Beiträge vorhanden.