Der Durchbruch: Stealth OS v2.5 – Die Lösung für unsere Teilen-Buttons
Hallo zusammen, hallo Arndt, hallo Wolfgang,
viele von euch wissen, wie lange ich an den Teilen-Buttons für unser Forum getüftelt habe.
Es gab immer wieder Probleme: Mal hat Twitter den Bereich nicht erkannt, mal hat Facebook statt des Beitragsbildes einfach nur das Logo aus dem Header gezogen (wie Arndt richtig bemerkt hatte).
Ich habe mich nach dem letzten Serverausfall und meinem eigenen Festplatten-Crash (echter Daten-Super-GAU!) an meinen Linux-Home-Server gesetzt und alles von Grund auf neu geschrieben.
Ich wollte nicht eher aufgeben, bis der Fehler wirklich weg ist.
Was ich aus den Fehlern gelernt habe (Die Analyse):
[] Wolfgangs Vermutung zum "Path": Wolfgang, du dachtest, es liegt am SVG-Pfad (path ). Ich habe gelernt: Der Pfad ist nur das Design des Icons. Der echte Fehler war das fehlende URL-Encoding.
[] Arndts Problem mit dem Vorschaubild: Arndt, Facebook hat das Header-Bild nur genommen, weil der Link zum Beitrag durch Sonderzeichen (wie ?, & oder Leerzeichen) "zerbrochen" war. Facebook fand den Beitrag nicht und hat als Notlösung das Logo oben genommen.
[] Die Lösung heute: Ich nutze jetzt die Xobor-Variable {{self_url_encode}}. Diese maskiert den Link so perfekt, dass Facebook und X jetzt genau wissen, welcher Beitrag gemeint ist. Das Bild wird nun korrekt geladen!
[] Kein JavaScript-Chaos mehr: Früher haben IDs wie id="shariff_button" Konflikte verursacht, wenn sie mehrfach auf einer Seite waren. Die neue Version läuft sauber über einen Hook und beißt sich mit nichts mehr.
Das ist die neue Stealth OS v2.5:
Es ist eine reine Zwei-Klick-Lösung. Das bedeutet: Absolut kein Tracking und kein Datensammeln durch Drittanbieter, solange ihr nicht aktiv klickt. Das ist Datenschutz, der wirklich funktioniert.
Danke an alle für das tolle Feedback und die Geduld. Wir haben bewiesen: Zusammen kriegen wir jeden Fehler klein!
Hallo zusammen, nach Bernds Einwand und einer langen Nacht am Server habe ich die Lösung nun perfektioniert. Ich muss ehrlich sagen: Als Anfänger steht man bei Xobor vor einer Wand.
Es gibt keine Anleitung für die hunderte Möglichkeiten in der Plugin-Entwicklung. Man probiert etwas, denkt es passt, und dann ist es doch technisch unsauber oder optisch "daneben".
Warum das so schwer ist? Hier ist die Liste, durch die ich mich wühlen musste:
(Wer hier den richtigen Pfad ohne Hilfe finden soll, ist echt aufgeschmissen)
[] Der Standort-Fehler: Zuerst hatte ich den Hook thread_after_message . Das war falsch, weil die Buttons dann außerhalb unter dem Post "schwebten".
[] Die Korrektur: Ich nutze jetzt in der Liste topic (Thread - Flat) mit dem Hook message_end. Damit wird die Leiste jetzt unter jedem Forenpost innerhalb des Beitragsrahmens angezeigt.
Es gehört jetzt optisch wirklich zum Post. [] Die Code-Trennung (Sauberer Quelltext): Bernd hatte recht mit dem Style-Block. Ich habe das Design jetzt so umgebaut, dass es idealerweise in die css (CSS Vorlage) ganz unten in der Liste kommt.
So wird das Design nur 1x geladen und nicht bei jedem Beitrag wiederholt. Das schont den Quelltext.
Wir haben bewiesen: Wenn man die Liste erst mal verstanden hat, kriegt man es auch perfekt hin. Ich poste euch jetzt den sauberen Code getrennt in HTML.
EINBAU-ANLEITUNG FÜR ADMINS :
Da die Liste in der Plugin-Entwicklung ohne Anleitung extrem unübersichtlich ist, hier der exakte Pfad, damit die Buttons sauber innerhalb der Beitragsbox landen:
Schritt 1: Gehe zu Admin > Plugin-Entwicklung .
Schritt 2: Wähle aus der Liste topic (Thread - Flat).
Schritt 3: Klicke auf Neues Inline-Element erstellen .
Schritt 4: Wähle als Hook/Position unbedingt: message_end.
Schritt 5: Kopiere den Code aus dem Spoiler unten hinein und speichere ab.
Hinweis: Ich habe den Hook von thread_after_message auf message_end geändert. Damit werden die Buttons jetzt unter jedem Beitrag innerhalb der Box angezeigt und hängen nicht mehr außerhalb darunter.
Teilen Buttons jetzt richtig im Beitrag nicht mehr außerhalb und unter dem fenster
<!-- DATENSCHUTZ INFO --> <div class="st-os-info-trigger">[ DATENSCHUTZ_INFO ]</div> <div class="st-os-info-box"> <strong style="color:#00f2ff; display:block; border-bottom:1px solid rgba(0,242,255,0.2); margin-bottom:10px; padding-bottom:5px;">RECHTLICHER HINWEIS</strong> Status: Sicher (Zwei-Klick-System)<br><br> Dieses Forum schützt Ihre Privatsphäre. Es werden erst dann Daten an soziale Netzwerke übertragen, wenn Sie aktiv auf einen Button klicken.<br><br> <strong>HINWEIS:</strong> Mit dem Klick verlassen Sie dieses Forum. Ab diesem Moment gelten die Datenschutzbestimmungen des jeweiligen Anbieters. </div> </div> </div>
Ich hoffe, diese Anleitung hilft euch dabei, das Forum ohne stundenlanges Suchen in der Liste aufzuwerten. Danke nochmal an Bernd für den kritischen Blick – nur so wird die Qualität am Ende wirklich professionell.
habe mich mit deiner Idee befasst und den Code aus #15 Mein Projekt Teilen Button (2) in einem inline-Element installiert.
die Variable {{self_url_encode}} existiert bei mir nicht, du nutzt sie auch aktuell nicht man könnte sie durch {{link_current_page|urlencode}} ersetzen
der hook message_end existiert nur im V4
im V6 gibt es nur thread_after_message oder thread_before_message beide sind ungeeignet
für mich ist dein Link-Container zu dominierend. ich bevorzuge einen Button in der Bearbeitenleiste unter der Signatur, der ein Popup öffnet, das wie dein Container gestaltet werden kann
die Positionierung dort ist nur per Javascript möglich.
Hallo Bernd, vielen Dank für deinen kritischen Blick und den Hinweis zur V6-Struktur! Das war genau der Anstoß, den ich brauchte, um das System noch einmal komplett zu überdenken.
Du hast absolut recht: In der V6-Umgebung sind die alten Hooks oft „Sackgassen“, und ein aufgeblähter Quelltext durch wiederholte Style-Blöcke ist natürlich Gift für die Performance.
Ich habe die Nacht im „Maschinenraum“ verbracht und die DSO v3.0 Hybrid-Engine entwickelt. Hier sind die Änderungen, mit denen ich auf deine Punkte reagiere:
Code-Trennung (Performance): Das gesamte Design (Block 62) ist jetzt vollständig in das globale CSS ausgelagert. Im Plugin-Bereich wird nur noch das reine, schlanke HTML-Gerüst geladen.
Damit ist dein Einwand zur Code-Wiederholung im Quelltext vom Tisch.
Variablen-Synchronisation: Ich nutze jetzt konsequent {{link_current_page|urlencode}}.
Zusätzlich habe ich eine intelligente XTML-Weiche eingebaut, die erkennt, ob das Forum im Legacy-Modus (Gaya/V4) oder in der modernen V6-Engine läuft, und die Variablen-Sets automatisch umschaltet.
V6-Positionierung: Da message_end in V6 oft nicht greift, experimentiere ich aktuell mit CSS-Injektionen, um das Interface sauber in die Beitragsbox zu integrieren, egal welcher Hook vom System geliefert wird.
Das Ganze ist aktuell ein Release Candidate (v3.0 Alpha) und wird gerade im Testforum auf Herz und Nieren geprüft.
Es ist noch kein offizielles Plugin, sondern ein Versuch, die Brücke zwischen den Generationen (HPM 2004 bis Xobor 2026) zu schlagen.
Ich würde mich freuen, wenn du dir den neuen Ansatz mal anschaust. Dein technisches Feedback hilft mir extrem dabei, das Ganze zur echten „Pluginreife“ zu führen!
Hallo Bernd, ich habe die Hybrid-Engine fertig. Bitte halte dich exakt an diese zwei Schritte für das Testforum:
SCHRITT 1: CSS-INJEKTION (Das Design) Gehe zu: Admin > Layout > Farben & Einstellungen > CSS. Kopiere das CSS hinein und speichere ab. Das muss zuerst passieren!
SCHRITT 2: PLUGIN-AKTIVIERUNG (Die Logik) Gehe zu: Admin > Plugin-Entwicklung. Wähle: topic (Thread - Flat). Erstelle ein Neues Inline-Element (Hook: thread_after_message). Kopiere das HTML hinein und speichere ab.
DER SYSTEM-CHECK: Fahre mit der Maus über [CORE_INFO] im Beitrag. Sag mir bitte: 1. Was steht bei PROTOCOL? (MODERN_V6 oder LEGACY_V3_V4) 2. Was steht bei OS_VERSION?
Das zeigt uns, ob das System sich selbst richtig konfiguriert hat! Ich hoffe, dass die Ideen und Inspirationen gut ankommen.
Danke das ihr das Thema nochmal aufgenommen habt. Die "Verlinkungen" zu FB sahen zum Teil sehr bescheiden aus, da immer der Header kopiert wurde. Ich persönlich würde einen Button in der Iconbar zum einfügen der "Teilen-Buttons" bevorteilen, denn unter jedem Beitrag wäre mir das zu viel. Vielleicht ist das wieder machbar.
Vielen Dank schon mal für eure Mühen und eure Zeit!
Arndt
Themen bei der Community für Transportunternehmer und Führungskräfte der Transport- und Logistikbranche:
Mich würde schon interessieren, wie es dann in whatsapp & co weitergeht, da ich dort keinen Account habe. Kann man dort den Post vervollständigen, ist man dort im Editiermodus?
könntest du oder jemand anderes Scrrenshots zeigen?
Ansonsten bin ich mit meinem Script fertig, es ist schön kompakt (ca 9kb) und hoffe, einfach zu installieren.