Smilie-replace auf externen Seiten

  • Ich habe das Wall Gästebuch in meiner Seite integriert.

    Jetzt möchte ich, dass in den Einträgen die Smilies auch durch die wp-smilies ersetzt werden.

    Ich habe dazu die Funktion convert_smilies($text) in includes/functions-formatting.php gefunden.

    Ist das prinzipiell die richtige Funktion? Wie muss ich die auf meinen Content anwenden?

    Code
    $content = trim(strip_tags($_POST['content'],'<img>'));
    $content = nl2br($content);
    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Ich weiß zwar nicht, von wo deine beiden Code-Zeilen kommen -- aber hast du mal versucht, da noch ein

    Code
    $content = convert_smilies($content);

    dranzuhängen?

  • Also, wie "extern" ist dein Gästebuch denn? Hast du das mit einem Plugin innerhalb von WordPress? Oder ist das komplett davon getrennt?

    Wenn das komplett getrennt ist, musst du die WordPress-Funktion ja aus deinem Gästebuch-Code raus aufrufen. Da kann ich dir dann leider auch nicht helfen -- ich pfusch mich bei PHP immer nur so durch...

  • Jetzt hab ich's. Die zwei Zeilen, die du oben hinkopiert hast, werden beim Speichern eines neuen Eintrags aufgerufen. Bei neuen Einträgen sollten eigentlich jetzt auch schon direkt graphische Smileys angezeigt werden.

    Allerdings hast du die Links zu den Bildern dann in der Datenbank stehen -- das heißt, wenn du irgendwann mal graphische Smileys wieder abstellst, werden diese Einträge trotzdem die Bildchen behalten.

    Was du eigentlich ändern möchtest, ist die Stelle, wo der Eintrag angezeigt wird. In der aktuellen Version vom Plugin (v. 0.03) gibt's in wall.php eine Zeile, die so aussieht:

    PHP
    <div class="wallcontent"><p><?php print $tag->content; ?></p></div>

    Ändere die so ab, dass sie statt dessen so aussieht:

    PHP
    <div class="wallcontent"><p><?php print convert_smilies($tag->content); ?></p></div>

    Das sollte dein Problem lösen.

    Das wär übrigens schneller gegangen, wenn du direkt einen Link auf das Plugin in deine Frage geschrieben hättest...

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!