Snippet installieren
Die zwei Zeilen zum Einfügen und wo sie auf WordPress, Shopify, Squarespace, Wix, Webflow, Odoo, Lovable und einfachem HTML hingehören.
Das Snippet besteht aus einem script-Tag und einem div. Das div enthält Ihre Widget-ID (sie beginnt mit w_) und ist die Stelle, an der das Widget erscheint:
Ein Beispiel: Ersetzen Sie w_YOUR_WIDGET_ID durch Ihre Widget-ID aus dem Dashboard oder kopieren Sie das gesamte Snippet aus dem „Install“-Tab des Widgets.
<script src="https://app.tileset.com/v1/tileset.js" async></script>
<div data-tileset="w_YOUR_WIDGET_ID"></div>
Kopieren Sie das echte aus dem „Install“-Tab des Widgets, tippen Sie die ID niemals von Hand. Seine „Where do I paste this?“-Liste enthält die Kurzanleitungen für jeden Website-Builder. Das Skript wird einmal pro Seite geladen; fügen Sie ein div pro Widget hinzu. Der eigene Code Ihrer Website ruft niemals die TileSet-API auf und speichert niemals einen Schlüssel.
Ältere Snippets mit data-sbe-widget anstelle von data-tileset funktionieren weiterhin: es gibt nichts zu ändern.
Wohin es gehört
| Website-Builder | Wohin einfügen | Anleitung |
|---|---|---|
| WordPress | Ein Block „Individuelles HTML“ | WordPress |
| Wix | Ein HTML-Einbettungselement mit beiden Zeilen darin | Wix |
| Shopify | Ein Abschnitt „Benutzerdefiniertes Liquid“ | Shopify |
| Squarespace | Ein Code-Block | Squarespace |
| Webflow | Ein Code-Embed-Element | Webflow |
| Odoo | Ein Block „Embed Code“ | Odoo |
| Lovable | Fragen Sie den Agenten des Builders oder fügen Sie das Snippet in die Seite ein | Lovable |
| Handgeschriebenes HTML | Irgendwo im Body | diese Seite |
Prüfen Sie, ob es funktioniert
- Live-Seite öffnen, nicht eine Editor-Vorschau, da die meisten Editoren keine Skripte ausführen. Ein Widget wird geladen, wenn es etwa 600 Pixel vom Bildschirm entfernt ist. Ein weit unten auf einer langen Seite oder in einem versteckten Tab platziertes Widget sendet keine Anfrage, bis ein Besucher fast da ist (Browser ohne diese Funktion laden es sofort). Seine Aufrufe werden gezählt, wenn es geladen wird. Ein Widget, zu dem niemand scrollt, wird nicht gezählt. Sobald es geladen ist, behalten seine Kacheln ihre Form, während die Bilder eintreffen. Ein weiter unten platziertes Widget wird geladen, bevor es in den Ansichtsbereich gescrollt wird, sodass sich die Seite nicht unter dem Besucher verschiebt. Für eines am oberen Rand einer Seite, das einen Moment nach der Seite erscheinen kann, hält ein
min-heightauf seinemdivseinen Platz. - Lassen Sie TileSet für Sie suchen. Der „Install“-Tab des Widgets hat ein „Check my page“-Feld. Fügen Sie die Adresse der Seite ein und drücken Sie „Check“ (Prüfen): TileSet liest die Seite so, wie es ein Besucher tun würde. Die gleiche Prüfung erscheint auch unter dem Snippet, wenn Sie es zum ersten Mal einrichten, und der „Widgets“-Bildschirm verlinkt darauf für ein Widget, das noch nicht auf einer Seite geladen wurde. Eine bestandene Prüfung kennzeichnet das Widget „Installed“ (Installiert) auf dem „Widgets“-Bildschirm mit der Seite, auf der es bestanden hat, bis eine Besucherseitenlast es „Live“. Auf Wix befindet sich das Snippet in einer Box, die unser Server nicht lesen kann: Öffnen Sie die veröffentlichte Seite einmal, überprüfen Sie sie dann, und die Prüfung wird auf dem eigenen Bericht des Widgets von dieser Seite bestanden (Wix-Anleitung). Die Seite muss ohne Anmeldung erreichbar sein. Die von Ihnen geprüfte Adresse wird für dieses Widget in diesem Browser gespeichert, und Sie können bis zu 30 Prüfungen pro Stunde durchführen. Wenn Ihr KI-Agent es installiert hat, kann er die gleiche Prüfung für die Seiten-URL durchführen.
- Ergebnis lesen. Es wird angezeigt, ob das Skript vorhanden ist, ob der
divdieses Widgets vorhanden ist und ob das Widget Elemente bereitstellt. Wenn das Skript oder derdivfehlt, kopiert eine „Copy the missing line“-Schaltfläche genau die hinzuzufügende Zeile (bei zwei fehlenden Elementen eine Schaltfläche für das Skript und eine für das Widget), sodass Sie sie so einfügen, wie sie ist.
Was eine Prüfung Ihnen sagen kann
Zu jedem Problem gibt es eine Lösung:
- Ein Platzhalter oder eine erfundene ID. Das
diventhältYOUR_WIDGET_IDoder eine ID, die zu keinem Ihrer Widgets gehört. Kopieren Sie das Snippet aus dem Tab „Install“ (Installieren) des Widgets. - Das Skript fehlt. Fügen Sie das Skript-Tag einmal auf der Seite ein. Wenn das
divvorhanden ist, das Skript aber nicht, entfernt Ihr Page Builder wahrscheinlich Skript-Tags aus Inhaltsblöcken: Setzen Sie das Skript in den Header- oder Footer-Codebereich der Website und lassen Sie dasdivdort, wo der Feed erscheinen soll. - Die ID gehört zu einem anderen Widget. Die Seite enthält ein Widget-
div, aber nicht das dieses Widgets. Ersetzen Sie seine ID. - Eine Anmeldung, eine Bot-Prüfung oder eine Firewall. Die Seite weist Besucher ohne Browser ab, sodass sie nicht gelesen werden kann. Prüfen Sie die Seite in einem privaten Fenster oder prüfen Sie eine öffentliche Seite der Website.
- Eine lokale oder private Adresse. „Check my page“ (Meine Seite prüfen) liest nur öffentliche Seiten über den Standardport: nicht
localhost, eine IP-Adresse, einen Namen wienas.localoderintranet.corpoder eine Adresse mit einem Port wie:8080. Veröffentlichen Sie die Seite und überprüfen Sie ihre öffentliche Adresse. - Eine alte, zwischengespeicherte Seite. Wenn Sie das Snippet gerade hinzugefügt haben, leeren Sie den Seiten-Cache (ein Caching-Plugin, Ihr Hoster oder ein CDN) und prüfen Sie erneut.
- Eine im Browser aufgebaute Seite. Lovable-, React-, Next- und Vite-Seiten fügen das Widget erst nach dem Laden ein, daher kann unser Server es nicht im HTML der Seite lesen. Wenn das Widget in der vergangenen Woche auf dieser Website geladen wurde, ist die Prüfung bestanden und nennt den Zeitpunkt. Wenn nicht, werden Sie gebeten, die Seite einmal im Browser zu öffnen und erneut zu prüfen: Erst dieser Aufruf zeigt uns, dass das Widget vorhanden ist.
Wenn nichts angezeigt wird
- Das
divbraucht eine echte Widget-ID aus Ihrem Dashboard. Ein Platzhalter zeigt nichts an. - Ein gelöschtes Widget rendert absichtlich nichts. Es zeigt Ihren Besuchern niemals eine Fehlermeldung an.
- Optimierungs-Plugins, die Skripte kombinieren oder verzögern, können das Laden des Widgets verhindern, da das Skript seine eigene Adresse aus seiner URL ermittelt. Schließen Sie
tileset.jsdavon aus (embed.jsbei einem älteren Snippet). - Wenn Ihre Website eine Content-Security-Policy festlegt, muss sie
https://app.tileset.comfür Skripte, Verbindungen und Bilder zulassen, Inline-Stile zulassen und Bilder von den Plattformen zulassen, die Sie anzeigen. Für YouTube in der Lightbox muss sie auch Frames vonwww.youtube-nocookie.comzulassen, für Twitch in der Lightbox vonplayer.twitch.tvundclips.twitch.tv, und für Kick in der Lightbox vonplayer.kick.com. - Kostenlose Widgets zeigen darunter einen kleinen Link „Angezeigt mit TileSet“. Siehe Pläne und Credits.
Wie TileSet tileset.js sicher hält
Das Skript läuft auf Ihren Seiten. Hier ist also, was es schützt und was Sie selbst überprüfen können.
- Es kommt von TileSet selbst.
tileset.jsund die Teile, die es später lädt (die Lightbox, das „Bento“-Layout, die Lightbox-Stile) werden vonhttps://app.tileset.combereitgestellt, demselben Ort wie Ihr Dashboard. Es gibt kein Drittanbieter-CDN dazwischen und keinen Drittanbieter-Code darin. - Eine Version in der Adresse.
/v1/ist ein Versprechen: Updates innerhalb von Version 1 machen ein eingefügtes Snippet nie unbrauchbar. Eine Änderung, die das täte, bekommt eine neue Adresse (/v2/) und kann daher nie von selbst auf Ihre Seite gelangen. Ältere Snippets, dieembed.js(https://app.tileset.com/embed.jsoderhttps://app.tileset.com/v1/embed.js) laden, erhalten exakt die gleiche Datei und funktionieren weiterhin: Es gibt nichts zu ändern. - Veröffentlichte Hashes. Der SHA-384-Hash jeder Datei ist öffentlich unter
https://app.tileset.com/v1/tileset-manifest.jsonverfügbar, zusammen mit einem Befehl, um zu überprüfen, was Ihr Browser oder Server empfängt. Jeden Tag überprüft TileSet, ob die Dateien, die er bereitstellt, noch mit den Hashes der bereitgestellten Version übereinstimmen. Eine Abweichung wird als Sicherheitsvorfall behandelt. - Vor der Auslieferung geprüft. Eine Version wird nur aus dem Hauptzweig ausgeliefert, nach der vollständigen Testsuite, einer Sicherheitsprüfung und einer bestandenen Größenprüfung.
- Ihre Content Security Policy muss nur
https://app.tileset.comzulassen:script-src https://app.tileset.com, plusconnect-src https://app.tileset.comundimg-srcfürhttps://app.tileset.comund die Plattformen, die Sie anzeigen (siehe Wenn nichts angezeigt wird).
Warum kein integrity-Attribut am Snippet? Ein Integritäts-Hash fixiert exakte Bytes. Bei unserem nächsten Update würde jedes eingefügte Snippet nicht mehr laden, und bis Sie ein neues einfügen, würde Ihre Seite alle Korrekturen, einschließlich Sicherheitskorrekturen, verpassen. Deshalb bieten Live-Dienste wie Stripe.js auch keinen auf ihrem Loader an. Die veröffentlichten Hashes und die tägliche Prüfung ermöglichen es Ihrem Sicherheitsteam, zu überprüfen, was läuft, ohne Ihre Website bei einer alten Version einzufrieren.