{"id":3363,"date":"2020-06-30T12:03:28","date_gmt":"2020-06-30T12:03:28","guid":{"rendered":"https:\/\/blog.tchop.io\/?p=3363"},"modified":"2024-08-19T06:54:21","modified_gmt":"2024-08-19T06:54:21","slug":"wie-sie-inhalte-aus-ihrem-cms-oder-intranet-automatisch-in-ihre-tchop-app-importieren","status":"publish","type":"post","link":"https:\/\/blog.tchop.io\/de\/wie-sie-inhalte-aus-ihrem-cms-oder-intranet-automatisch-in-ihre-tchop-app-importieren\/","title":{"rendered":"Wie Sie Inhalte aus Ihrem CMS oder Intranet automatisch in Ihre tchop App importieren"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"610\" height=\"497\" src=\"https:\/\/blog.tchop.io\/wp-content\/uploads\/2020\/03\/illu_principle.jpg\" loading=\"lazy\" alt=\"Illustration showing tchop backend\" class=\"wp-image-2972\" srcset=\"https:\/\/blog.tchop.io\/wp-content\/uploads\/2020\/03\/illu_principle.jpg 610w, https:\/\/blog.tchop.io\/wp-content\/uploads\/2020\/03\/illu_principle-300x244.jpg 300w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><\/figure>\n\n\n\n<p>Die reibungslose und einfache Integration bestehender Systeme ist einer der Kernbausteine von tchop. Denn in vielen F\u00e4llen verf\u00fcgen unsere Kunden &#8211; ganz gleich, ob es um eine Mitarbeiter App oder eine <a href=\"https:\/\/blog.tchop.io\/de\/10-entwicklungen-nachrichtenjournalismus-2026\/\">News<\/a> App geht &#8211; bereits \u00fcber ein professionelles System zum Erstellen, Managen und Verbreiten von digitalen Inhalten. In diesem System ist das eigene Team gewohnt zu arbeiten. Mit der Idee der Content Integration wie wir sie verfolgen, k\u00f6nnen Teams ganz einfach weiter in den gewohnten Systemen arbeiten und Inhalte publizieren. <\/p>\n\n\n\n<p>Unsere Plattform erlaubt den Import und Export von Content-Karen bzw. Objekten (Textelemente, Bilder, Video, Audio) \u00fcber definierte Schnittstellen.<br>Damit lassen sich Inhalte aus externen Systemen automatisiert in Ihre eigene App importieren. Prinzipiell lassen sich alle relevanten Content-Typen so integrieren:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.tchop.io\/wp-content\/uploads\/2020\/06\/image-1-1024x419.png\" loading=\"lazy\" alt=\"\" class=\"wp-image-3364\" width=\"587\" height=\"240\" srcset=\"https:\/\/blog.tchop.io\/wp-content\/uploads\/2020\/06\/image-1-1024x419.png 1024w, https:\/\/blog.tchop.io\/wp-content\/uploads\/2020\/06\/image-1-800x328.png 800w, https:\/\/blog.tchop.io\/wp-content\/uploads\/2020\/06\/image-1-300x123.png 300w, https:\/\/blog.tchop.io\/wp-content\/uploads\/2020\/06\/image-1-768x315.png 768w, https:\/\/blog.tchop.io\/wp-content\/uploads\/2020\/06\/image-1-1536x629.png 1536w, https:\/\/blog.tchop.io\/wp-content\/uploads\/2020\/06\/image-1-2048x839.png 2048w, https:\/\/blog.tchop.io\/wp-content\/uploads\/2020\/06\/image-1-1100x451.png 1100w\" sizes=\"auto, (max-width: 587px) 100vw, 587px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Artikel mit Text, Bild oder Bildergalerie sowie einer einfachen Standard-Formatierung des Textes (Abs\u00e4tze, fette oder unterstrichene Schrift etc)<\/li><li>Einzelne Bilder oder Bildergalerien mit Bildunterschriften und Copyright-Angaben <\/li><li>Links zu beliebigen Inhalten auf einer Web URL (die dann in der App in einem sogenannten Web View ge\u00f6ffnet werden); dies k\u00f6nnen News-Artikel oder sonstige Inhalte sein<\/li><li>Videos, die mittels der nativen App-Videoplayer direkt in der App abgespielt werden k\u00f6nnen<\/li><li>Audio-Files (wie bspw. Podcasts), die \u00fcber eine spezielle Audio-Karte mit den Standard-Audio Controls abgespielt werden k\u00f6nnen<\/li><li>Social Media Posts, die sich ebenfalls in einem sogenannten Web View innerhalb der App \u00f6ffnen lassen<\/li><\/ul>\n\n\n\n<p>S\u00e4mtliche Formate k\u00f6nnen strukturiert aus anderen Systemen \u00fcbernommen werden. Dazu gibt es abh\u00e4ngig von dem Anwendungsfall und den konkreten Anforderungen bzw. Rahmenbedingungen folgende M\u00f6glichkeiten:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. Import eines Streams von Web Links via RSS<\/h3>\n\n\n\n<p>Der einfachste Standardweg Inhalte als Web Link zu beliebigen URLs zu integrieren, geht \u00fcber unsere RSS Integration. Viele Systeme oder Seiten liefern ohnehin einen sauberen RSS-Feed. Dieser kann sofort \u00fcber die entsprechende Integration eingebunden werden. In einem beliebigen Kanal oder Mix, k\u00f6nnen beliebig viele, unterschiedliche RSS Feeds integriert werden. Die eigene App l\u00e4sst sich so flexibel und einfach strukturieren. \u00dcber die RSS Feeds hat man aus dem eigenen System heraus jederzeit die volle Kontrolle.<\/p>\n\n\n\n<p>In einem eigenen Blog Post erl\u00e4utern wir die korrekte Integration eines RSS Feeds <a href=\"https:\/\/blog.tchop.io\/de\/wie-man-in-wenigen-schritten-inhalte-und-news-via-rss-feed-importiert\/\" class=\"aioseop-link\">hier<\/a> genauer.<\/p>\n\n\n\n<p>Zus\u00e4tzlich gibt es verschiedene M\u00f6glichkeiten Zugriff und Darstellung der Web-URL in der App zu beeinflussen. Liegt der Artikel im Web bspw. hinter einer Paywall, macht es Sinn, dass man es der App erm\u00f6glicht den <a href=\"https:\/\/blog.tchop.io\/de\/wie-baut-man-eine-loyale-digitale-community-auf\/\">Inhalt<\/a> hinter dieser Paywall anzuzeigen. Dazu gibt es verschiedene L\u00f6sung. Die App kann dazu einen sicheren &#8222;Unique Identifier&#8220; an den Server \u00fcbergeben. Der Server kann dann eine Version der Seite ohne Paywall (wie bei einem Abonnenten auch) ausliefern.  Dies kann mittels einer User-ID geschehen (so, dass der Server weiss, welcher Nutzer hier Zugriff hat oder auch nicht) oder auch mittels anderer Wege (bspw. durch die \u00dcbergabe eines Parameters im HTML Request). <\/p>\n\n\n\n<p>Ausserdem besteht M\u00f6glichkeiten die auf der Website bestimmte Elemente auszublenden (bspw. den Header mit der Navigation), wenn es Sinn macht in der App wirklich nur den Inhalt anzuzeigen. Auch den Style der Seite kann man mittels CSS-Anpassungen in der App mit etwas Zusatzaufwand im Detail beeinflussen (bspw. auch um Werbung oder bestimmte Content-Elemente auszublenden).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2. Import von Inhalten via XML<\/h3>\n\n\n\n<p>Die oben beschriebene Nutzung von Web-Links hat einige Vorteile. Aus Sicht der User Experience in der App macht es aber Sinn, den Content nativ in der Apps als Text, Bild bzw. Bildergalerie, Audio oder Video darzustellen. Native Inhalte werden schneller dargestellt, es entfallen l\u00e4stige Ladezeiten und der Inhalte integriert sich optisch besser (weil v\u00f6llig reibungslos) in die gesamte App-Darstellung. Besonders f\u00fcr f\u00fcr mehrwertige Paid Content- oder Mitgliedermodelle angeht, machen solche Anbindungen daher Sinn.  <\/p>\n\n\n\n<p>Um Inhalte nativ in die App zu integrieren, gibt es unterschiedliche Optionen. Eine Option ist die Anlieferung einer XML Datei. Viele Systeme bieten die Option eine solche XML Datei f\u00fcr neu publizierte Inhalte automatisch zu exportieren. Diese XML Datei ist auf einem sicheren SFTP-Folder abzulegen.  Von dort kann ein entsprechender Parser auf unserer Seite die Inhalte in einem gewissen Rhythmus (bspw. alle 4-5 Minuten) importieren. <\/p>\n\n\n\n<p>\u00dcber eine eigene Ordnerstruktur innerhalb dieses SFTP-Folders k\u00f6nnen Inhalte entsprechenden Mixes bzw. Rubriken in der App zugewiesen werden. Im tchop Backend k\u00f6nnen die Inhalte dann nat\u00fcrlich noch bearbeitet, kommentiert oder auch einfach direkt automatisch publiziert werden.<\/p>\n\n\n\n<p>Das wichtigste dabei: die Struktur des XMLs muss konsistent einer vereinbarten Struktur folgen. Wir orientieren uns dabei an einem Branchenstandard, dem sogenannten PMG-XML. PMG Pressemonitor ist die gr\u00f6\u00dfte deutsche Pressedatenbank. Mehr als 800 Verlagspartner liefern t\u00e4glich Inhalte mittels dieses XMLs an diese Datenbank (siehe Download einer Beispieldatei <a href=\"https:\/\/www.pressemonitor.de\/app\/uploads\/PMG-XSD-Schema_Beispieldateien.zip\" class=\"aioseop-link\" target=\"_blank\" rel=\"noopener\">hier<\/a>). <\/p>\n\n\n\n<p>Prinzipiell sind aber auch gesonderte Anpassungen der XML Struktur- und Vorgaben denkbar. <\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. Import via API<\/h3>\n\n\n\n<p>Eine modernere und leistungsf\u00e4higere Integration ist die Anbindung mittels einer Schnittstelle (JSON API). Unsere Plattform verf\u00fcgt \u00fcber eine Input-API, die es erm\u00f6glicht verschiedene Inhalte, aber auch Rubriken und Funktionen dar\u00fcber anzusprechen und zu steuern. Inhalte k\u00f6nnen dorthin &#8222;geliefert&#8220; werden, so dass ein automatischer Import auch in hochaktueller Frequenz m\u00f6glich ist. <\/p>\n\n\n\n<p>\u00dcber die Verwendung entsprechender IDs. und Timestamps k\u00f6nnen auch bestehende Inhalte aktualisiert bzw. \u00fcberschrieben werden. <\/p>\n\n\n\n<p>Dar\u00fcberhinaus besteht auch die M\u00f6glichkeit, dass wir die Inhalte an einer Schnittstelle auf Kundenseite abholen und mittels einer eigenen Integration importieren. Verf\u00fcgt Ihr CMS oder Intranet bereits \u00fcber eine solche Schnittstelle, ist dies oft der einfachste und schnellste Weg.<\/p>\n\n\n\n<p>Allgemein bietet die Anbindung \u00fcber eine richtige Schnittstelle verschiedene Vorteile (u.a. eine bessere Performance und mehr Flexibilit\u00e4t). Allerdings ist die technisch auch die komplexeste Variante im Set Up. Oft lohnt sich der anf\u00e4ngliche Aufwand aber auf lange Sicht.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Die reibungslose und einfache Integration bestehender Systeme ist einer der Kernbausteine von tchop. Denn in vielen F\u00e4llen verf\u00fcgen unsere Kunden &#8211; ganz gleich, ob es&#8230;<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[65,135],"tags":[],"coauthors":[134],"class_list":["post-3363","post","type-post","status-publish","format-standard","hentry","category-die-plattform","category-integrationen"],"_links":{"self":[{"href":"https:\/\/blog.tchop.io\/de\/wp-json\/wp\/v2\/posts\/3363","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.tchop.io\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.tchop.io\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.tchop.io\/de\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.tchop.io\/de\/wp-json\/wp\/v2\/comments?post=3363"}],"version-history":[{"count":4,"href":"https:\/\/blog.tchop.io\/de\/wp-json\/wp\/v2\/posts\/3363\/revisions"}],"predecessor-version":[{"id":3369,"href":"https:\/\/blog.tchop.io\/de\/wp-json\/wp\/v2\/posts\/3363\/revisions\/3369"}],"wp:attachment":[{"href":"https:\/\/blog.tchop.io\/de\/wp-json\/wp\/v2\/media?parent=3363"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.tchop.io\/de\/wp-json\/wp\/v2\/categories?post=3363"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.tchop.io\/de\/wp-json\/wp\/v2\/tags?post=3363"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blog.tchop.io\/de\/wp-json\/wp\/v2\/coauthors?post=3363"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}