html tag a href in custom fields

  • hi,

    ich habe per "function.php" mir ein CUSTOM FIELD eingebunden. Dort möchte ich Text mit einem Link einbinden und diesen dann im Frontend mir Anzeigen lassen.
    Leider interpretiert das Wordpress den HTML TAG

    Code
    <a href="https://www.enzianni.de/shop/circles/">Circles</a>

    nur als reinen Text und formatiert sich die Ausgabe nicht also LINK mit TEXT.

    Hier mal die Code der in der function.php steht:


    und ich binde die Ausgabe mit folgenden Code in die Template Datei ein:

    PHP
    <div class="woocommerce-variation-custom-text-field">
                    <p><?php echo esc_html( get_post_meta( $post->ID, 'my_text_field', true ) ); ?></p></div>

    hat jemand dazu eine Idee was noch hier beachtet werden muss für die richtige Ausgabe des Links?

    gruß, talkuvit

    3 Mal editiert, zuletzt von talkuvit (11. November 2019 um 06:18)

    • 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

  • Schreibe nur die URL in das Feld und erstelle den HTML Code in der Ausgabe.

    WordPress ist "frei" wie in Freiheit es zu nutzen, aber nicht im Sinne von Freibier. Wer also glaubt man bekommt rund um WordPress alles kostenlos, der irrt. Hilfe ist ein Geschenk für das man sich bedankt, dafür gibt es den 'Gefällt mir' Button. Wer das nicht kann und sich selbst nicht zu helfen weiss, muss sich bezahlte Unterstützung suchen.

  • danke für deine Idee,

    aber wenn ich das doch so löse dann kann ich der URL doch keinen individuellen Link Text über das Zusätzliche Feld (custom field) im backend vergeben ?

  • Dein Code "escaped" das HTML vor dem Speichern, daher wird es vermutlich so angezeigt...

    Zitat

    update_post_meta( $variation_id, 'my_text_field', [COLOR=#ff0000]esc_attr([/COLOR] $text_field [COLOR=#ff0000])[/COLOR]);

  • mit
    esc_html() wird ja trotzdem noch "escaped".

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Oder prüfen ob escaped wurde und dann unescapen ... was für ein Wort

    WordPress ist "frei" wie in Freiheit es zu nutzen, aber nicht im Sinne von Freibier. Wer also glaubt man bekommt rund um WordPress alles kostenlos, der irrt. Hilfe ist ein Geschenk für das man sich bedankt, dafür gibt es den 'Gefällt mir' Button. Wer das nicht kann und sich selbst nicht zu helfen weiss, muss sich bezahlte Unterstützung suchen.

  • hey alle zusammen,

    danke für euren Tipp und Anregungen:

    Zitat

    Dein Code hat das HTML vor dem Speichern "escaped".

    Damit Du jetzt Änderungen sehen kannst, musst Du logischerweise alle bestehenden Felder korrekt eingeben und neu speichern.

    Habe gar nicht mehr an die Datenbank gedacht, in die natürlich den Wert schon Falsch einmal hinterlegt wurde das erste mal beim abspeichern und nun keinen neuen Input von mir bekam.

    Super ! Danke

Jetzt mitmachen!

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