Zum Hauptinhalt springen

Einbetten

Öffentliche Inhalte Ihres Mandanten lassen sich als <iframe> in eine externe Website (z. B. die bestehende Vereins-Homepage) einbinden. Dafür stehen eigene Embed-Ansichten für Veranstaltungen, Neuigkeiten und Positionen bereit.

Die Embed-Ansichten nutzen denselben Inhalt wie die öffentliche Präsenz, sind aber auf die Einbettung zugeschnitten und werden von Suchmaschinen nicht indexiert.

Voraussetzungen

Eine Embed-Ansicht liefert Inhalte, sobald der einzelne Inhalt selbst öffentlich freigegeben ist (Veranstaltung veröffentlicht, Neuigkeit öffentlich, Position veröffentlicht und öffentlich einsehbar).

Embeds folgen nicht dem Präsenz-Hauptschalter

Anders als die Vereinsseite und ihre tenantgebundenen Listenseiten sind die Embed-Routen nicht an den Hauptschalter der öffentlichen Präsenz gekoppelt. Ein eingebetteter Inhalt kann also weiterhin erscheinen, auch wenn die öffentliche Präsenz deaktiviert ist — maßgeblich ist allein die Freigabe am einzelnen Inhalt. Wer eingebettete Inhalte zuverlässig zurückziehen möchte, muss die Freigabe am Inhalt selbst aufheben (Veranstaltung auf Entwurf/privat, Neuigkeit nicht mehr öffentlich, Position nicht mehr öffentlich einsehbar).

Mehr zu den Abhängigkeiten der öffentlichen Präsenz unter Öffentliche Präsenz.

URL-Aufbau

Alle Embed-Adressen liegen unter dem Pfad /t/<tenantId>/embed/.... <tenantId> ist die Kennung Ihres Mandanten, wie sie auch in der Adresse der öffentlichen Vereinsseite (/t/<tenantId>) erscheint.

Für jeden Bereich gibt es eine Listenansicht und eine Detailansicht (mit der ID des jeweiligen Eintrags):

BereichListeDetail
Veranstaltungen/t/<tenantId>/embed/events/t/<tenantId>/embed/events/<eventId>
Neuigkeiten/t/<tenantId>/embed/news/t/<tenantId>/embed/news/<announcementId>
Positionen/t/<tenantId>/embed/positions/t/<tenantId>/embed/positions/<positionId>

Die Detailansicht benötigt zusätzlich die ID des Eintrags (eventId, announcementId bzw. positionId).

Beispiel-Snippets

Ersetzen Sie IHRE-DOMAIN, <tenantId> und die jeweilige ID durch Ihre konkreten Werte.

Veranstaltungen (Liste)

<iframe
src="https://IHRE-DOMAIN/t/<tenantId>/embed/events"
style="width: 100%; border: 0;"
title="Veranstaltungen"
></iframe>

Neuigkeiten (Liste)

<iframe
src="https://IHRE-DOMAIN/t/<tenantId>/embed/news"
style="width: 100%; border: 0;"
title="Neuigkeiten"
></iframe>

Positionen (Liste)

<iframe
src="https://IHRE-DOMAIN/t/<tenantId>/embed/positions"
style="width: 100%; border: 0;"
title="Positionen"
></iframe>

Einzelner Eintrag (Detail)

Für eine einzelne Veranstaltung hängen Sie die eventId an. Für Neuigkeiten bzw. Positionen gilt dasselbe Muster mit announcementId bzw. positionId.

<iframe
src="https://IHRE-DOMAIN/t/<tenantId>/embed/events/<eventId>"
style="width: 100%; border: 0;"
title="Veranstaltung"
></iframe>

Höhe automatisch anpassen

Die Embed-Ansichten melden ihre Inhaltshöhe an die einbettende Seite, damit der <iframe> mitwachsen kann, statt intern zu scrollen. Dazu sendet die eingebettete Seite per postMessage eine Nachricht mit type: 'intraonline:embed-height' und der gemessenen Höhe an das übergeordnete Fenster, sowohl beim ersten Laden als auch bei jeder Größenänderung.

Damit die Höhe übernommen wird, muss die einbettende Seite auf diese Nachricht reagieren. Ein einfacher Listener:

<script>
window.addEventListener('message', function (event) {
if (event.data && event.data.type === 'intraonline:embed-height') {
var frame = document.querySelector('iframe[src*="/embed/"]');
if (frame) {
frame.style.height = event.data.height + 'px';
}
}
});
</script>

Setzen Sie alternativ in einem Baukasten- oder CMS-System (z. B. „Advanced iFrame") dessen Resize- bzw. iframe-resizer-Option, sodass die gemeldete Höhe ausgewertet wird.

Hinweise

  • Die Embed-Ansichten werden mit noindex,nofollow ausgeliefert und tauchen damit nicht eigenständig in Suchmaschinen auf.
  • Ist die öffentliche Präsenz deaktiviert oder der Inhalt nicht freigegeben, bleibt der <iframe> ohne Inhalt bzw. zeigt einen Hinweis, dass die Ansicht nicht verfügbar ist.