Frage zur Shortcode API

  • Hy,

    ich hab mal eine Frage wegen den Shortcodes, wenn ich mir über ein Plugin selber welche definiere, funktioniert das alles wunderbar, aber irgendwie wird der Inhalt des Shortcodes vor dem Inhalt des normalen Contents angezeigt, auch wenn der Shortcode erst nach dem Inhalt im Editor steht.
    Beispiel:

    wenn das im Editor steht

    Code
    <h6>Überschrift</h6>
    [hugo alter="3"]


    kommt das bei mir raus:

    Code
    Hugo ist 3
    Überschrift


    wenn folgendes für den Shortcode definiert ist

    PHP
    function teachpress_hugo($atts) {
    	echo"<p>Hugo ist " . $atts['alter'] . "</p>";
    }

    Daher meine Frage: Muss das so sein? Bzw: Kann man das irgendwie so ändern, dass der Inhalt des Shortcodes da steht, wo im Editor der Shortcode eingetragen ist?

    • 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

  • Nein das muß und soll nicht so sein.

    In der Funktion ist "echo" nicht sinnvoll, denn damit wird der Text ja sofort ausgegeben. Vielmehr muß da ein "return" stehen:

    PHP
    function teachpress_hugo($atts) {
        return "<p>Hugo ist " . $atts['alter'] . "</p>";
    }

    Gruß
    Ingo

    Wenn ich helfen konnte, bitte [ Gefällt mir ] klicken. :-)

Jetzt mitmachen!

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