PORTAL und PPS Knowledge Base

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 15 Next »

Um bei Importen (z. B. über die API (Cloud-Connect)) Inhalte anzulegen, die über reinen Text hinausgehen (z.B. Einbettungen), müssen die HTML- & BBCode-Tags genutzt werden. Diese werden auch vom PEIQ PORTAL verwendet und daher entsprechend korrekt verarbeitet.

Funktionalitäten der Content Tags

  • Textauszeichnungen über BBCode-Tags

  • Einfügen von externen Inhalten über Einbettungen

Inhaltsverzeichnis

 Inhaltsverzeichnis anzeigen

Details

Textauszeichnungen müssen als HTML-Tag übergeben werden, für Einbettungen muss BBCode verwendet werden.

In den Inhaltsformularen der einzelnen Module ist eine direkte Eingabe von HTML-Tags aus Sicherheitsgründen nicht erlaubt. Stattdessen wird ein definiertes Set von BBCode-Tags unterstützt, mit denen Inhalte angereichert werden können. Weitere Infos siehe Editor im PORTAL (BBCode).

Ablage des BBCode-Textes in der Datenbank

Sobald ein Inhalt gespeichert und in die Datenbank übertragen wird, werden die eingegebenen BBCodes teilweise in HTML konvertiert, bevor der Text in der Datenbank abgelegt wird. Andere BBCodes werden beibehalten. Weitere Informationen finden sich hier: Ablage des BBCode-Textes in der Datenbank

Öffnet man den Inhalt im Editor, so werden die unterstützten HTML-Tags wieder als BBCode angezeigt, sodass diese ohne Probleme bearbeitet werden können.

Importierte HTML-Tags im Editor

Prinzipiell gibt es keine Filterung von HTML-Tags bei der Darstellung von Inhalten, sie werden direkt und ohne Escaping ausgegeben. Es ist also möglich, über die verschiedenen API- und Import-Funktionen beliebigen HTML-Code in das Portal einzuspielen.

Bearbeitet man aber im Editor einen solchen Inhalt, so werden die nicht unterstützten HTML-Tags in Entities umgewandelt und damit beim Speichern unbrauchbar gemacht.

Bei Importen müssen diese Besonderheiten berücksichtigt und die zu importierenden Inhalte entsprechend aufbereitet werden: Textauszeichnungen müssen als HTML-Tag übergeben werden, für Einbettungen muss BBCode oder HTML verwendet werden.

Textauszeichnungen

Textauszeichnungen müssen bei Importen als HTML-Tag übergeben werden. Sofern die unten aufgelistete Syntax eingehalten wurde, können die Inhalte im Editor normal bearbeitet werden.

Unterstützte HTML-Tags

Beschreibung

HTML-Tag beim Import

Anzeige im Editor

Zwischenüberschrift

<h2>

[h2]

Fett

<b>

[b]

Kursiv

<i>

[i]

Unterstrichen

<u>)

[u]

Hochgestellt

<sup>

[sup]

Tiefgestellt

<sub>

[sub]

Ungeordnete Liste

 

<ul>

Beispiel:

<ul><li>Eins</li><li>Zwei</li><li>Drei</li></ul>

[list][*]

Beispiel:

[list][*]Eins[/*][*]Zwei[/*][*]Drei[/*][/list]

Geordnete Liste

<ol>

Beispiel:

<ol><li>Eins</li><li>Zwei</li><li>Drei</li></ol>

[list=1][*]

Beispiel:

[list=1][*]Eins[/*][*]Zwei[/*][*]Drei[/*][/list]

Zitat

<quote> -Tag (HTML)

Beispiel:

<quote>Gute Geschichten erfolgreich machen<quote>

[quote]

Beispiel:

[quote]Gute Geschichten erfolgreich machen[/quote]

Hyperlink

 

<a> -Tag (HTML)

Beispiel:

<a href="https://www.google.com" rel="nofollow">Google</a>

[url]

Beispiel:

[url=https://www.google.de]Google[/url]

Hyperlink, der in einem neuen Fenster öffnet.

<a> -Tag (HTML)

Beispiel:

<a href="https://www.google.com" onclick="window.open(this.href); return false;" rel="nofollow">Google</a>

[urlnt]

Beispiel:

[urlnt=https://www.google.com]Google[/urlnt]

Absätze können beim Import über das Steuerzeichen “\n” eingefügt werden.

Hinweise zu <a>-Tags

Über den Editor eingegebene Links werden beim Speichern des Inhalts direkt mit dem korrekten rel-Attribut versehen. Details finden sich hier: nofollow, sponsored & ugc

Bei der oben beschriebenen Verarbeitungsweise handelt es sich jedoch um eine Funktion des Editors!

Bei zu importierenden Inhalten müssen die rel-Attribute mitgegeben werden. Hierbei ist zu berücksichtigen, dass die Reihenfolge der Attribute strikt eingehalten werden muss:

Nach dem <a> muss das href-Attribut folgen, dann das rel-Attribut.

Beispiele:

<a href="https://www.google.com" rel="nofollow">Google</a>
<a href="https://www.google.com" onclick="window.open(this.href); return false;" rel="nofollow">Google</a>

Wichtiger Hinweis: Sobald der importierte Inhalt im Editor geöffnet wird, werden die HTML-Tags in die BBCode-Tags [url] bzw. [urlnt] umgewandelt und das über den Import mitgegebene rel-Attribut verworfen. Beim Speichern zieht die entsprechende Logik des PORTALs ( → siehe nofollow, sponsored & ugc ).

Unterstützte Einbettungen

Einbettungen werden zum Einfügen von externen Inhalten verwendet (z.B. YouTube-Videos). Da es sich bei diesen Inhaltsformen oft um dynamisch generierte Codefragmente handelt, werden bei Einbettungen die BBCode-Tags nicht transformiert, sondern direkt in die Datenbank geschrieben. Bei der Darstellung der Inhalte im PORTAL wird dann zur Laufzeit der entsprechende Code eingefügt.

Folgende Tags werden für Einbettungen unterstützt:

  • [video] Einbettung von Videos. Unterstützt werden YouTube, Vimeo und APA. Innerhalb der Tags muss die URL des Videos stehen.

Beispiele:
[video]https://www.youtube.com/watch?v=wZb5SGpv3RU[/video] 
[video]https://vimeo.com/54785974[/video] 
  • [map] Einbettung von iFrame-Karten. Unterstützt werden Google Maps, Google My Maps und OpenStreetMap. Innerhalb der Tags muss die iFrame-src-URL der Karte stehen.

Beispiele: 
[map]https://www.google.com/maps/embed?pb=!1m14!1m8!1m3!1d10604.94119928147!2d10.8967622!3d48.3560021!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x0%3A0xd2915ac686271fad!2sGogol+Publishing!5e0!3m2!1sde!2sde!4v1506516680490[/map]
[map]https://www.google.com/maps/d/embed?mid=1FRnNtkcAZZ9bXYj6d6IkLmP_NBI[/map]
[map]http://www.openstreetmap.org/export/embed.html?bbox=10.856251716613771%2C48.357161569178395%2C10.914187431335451%2C48.37823098427322&layer=mapnik[/map]
  • [twitter] Einbindung eines Twitter-Posts.

Beispiel: [twitter]https://twitter.com/Astro_Alex/status/519795406377861120[/twitter]
  • [instagram] Einbindung eines Instagram-Posts.

Beispiel: [instagram]https://www.instagram.com/p/BYCTgxsAPdw/[/instagram]
  • [facebook] Einbindung eines Facebook-Posts.

Beispiel: [facebook]https://www.facebook.com/les.chats.mignons/photos/a.373652229420146.1073741828.373006119484757/1280135262105167/[/facebook]
  • [tumblr] Einbindung eines Tumblr-Posts.

Beispiel: [tumblr] http://sabonhomeblog.tumblr.com/post/164408606674[/tumblr]

Einbettungen von internen Inhalten

Ein Teil der Einbettungen von internen Inhalten müssen als Platzhalter-<div> importiert werden. Der Platzhalter wird erst beim Ausspielen durch den entsprechenden Embed-Code ersetzt. Ein anderer Teil der BBCodes wird als BBCode importiert. Auch in diesem Fall wird der BBCode-Platzhalter beim Ausspielen durch ein entsprechendes <div> ersetzt.

Beschreibung

Tag beim Import

Anzeige im Editor

Ein am Beitrag hochgeladenes Bild, welches im Text des Beitrags eingebettet wurde.

<div data-media-eimg="{Bild-ID}"></div>
[eimg={Bild-ID}]https://Ziel-URL-des-Bildes.png[/eimg]

Ein im Text eingebetteter Medienstream.

<div data-media-estm="{Medienstream-ID}"></div>
[estm={Medienstream-ID}]Ziel-URL des Vorschaubilds[/estm]

Eingebetteter Teaser auf einen Beitrag.

  • data-article-earticle-layout="default": Anzeige als normale Teaser-Card

  • data-article-earticle-layout="image-gallery": Anzeige als Bildergalerie-Teaser-Card

<div data-article-earticle="{Beitrag-ID}" data-article-earticle-layout="default">Überschrift des Beitrags</div>
<div data-article-earticle="{Beitrag-ID}" data-article-earticle-layout="image-gallery">Überschrift des Beitrags</div>

 

[earticle={Beitrag-ID} layout=default]Überschrift des Beitrags[/earticle]
[earticle={Beitrag-ID} layout=image-gallery]Überschrift des Beitrags[/earticle]

Eingebetteter Teaser auf einen Schnappschuss.

<div data-article-eimagepost="{Schnappschuss-ID}">Überschrift des Beitrags</div>
[eimagepost={Schnappschuss-ID}]Überschrift des Beitrags[/eimagepost]

Eingebetteter Teaser auf eine Veranstaltung.

  • data-eventcalendar-eeventitem-layout="default": Anzeige als normale Teaser-Card

  • data-eventcalendar-eeventitem-layout="image-gallery": Anzeige als Bildergalerie-Teaser-Card

<div data-eventcalendar-eeventitem="{Veranstaltung-ID}" data-eventcalendar-eeventitem-layout="default">Überschrift der Veranstaltung</div>
<div data-eventcalendar-eeventitem="{Veranstaltung-ID}" data-eventcalendar-eeventitem-layout="image-gallery">Überschrift der Veranstaltung</div>
[eeventitem={Veranstaltung-ID} layout=default]Überschrift der Veranstaltung[/eeventitem]
[eeventitem={Veranstaltung-ID} layout=image-gallery]Überschrift des Veranstaltung[/eeventitem] 

Eingebettete Aktion. Weitere Informationen zu Aktionen finden sich hier.

[paevent={Aktion-ID}]Titel der Aktion[/paevent]

 

[paevent={Aktion-ID}]Titel der Aktion[/paevent]

Markierung der Lesebeschränkung bei Premium-Inhalten

Die Markierung der Lesebeschränkung bei Premium-Inhalten muss als HTML-Tag importiert werden:

Beschreibung

Ablage in der Datenbank

Anzeige im Editor

Markierung der Lesebeschränkung bei Premium-Inhalten. Weitere Informationen zur Lesebeschränkung finden sich hier.

<premium-teaser>
[pcrm][/pcrm]

 

 

Exporte

Das Verhalten bei Exporten ist hier beschrieben: Ablage des BBCode-Textes in der Datenbank

Verwandte Seiten

  • No labels