1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

Shortcode innerhalb eines anderen Shortcodes

Dieses Thema im Forum "Plugins und Widgets" wurde erstellt von christian_m84, 25. November 2022.

  1. christian_m84

    christian_m84 Member

    Registriert seit:
    24. November 2022
    Beiträge:
    8
    Zustimmungen:
    1
    Hallo Zusammen,

    ich nutze das DIVI Theme. Ein Button enthält einen Link, innerhalb dieses Links möchte ich einen Shortcode von einem anderen Plugin ausgeben lassen. Wenn ich diesen Shortcode einfach innerhalb des Divi Builders einfüge geht es natürlich nicht; mache ich es in der SQL Tabelle mit PHP Echo geht es auch nicht - aber wahrscheinlich, hab ich da was falsch gemacht. Versuche es mal mit dem gekürzten Code zu erläutern:

    [et_pb_button button_url="https://www.muster.de?text=[HIERSHORTCODE]" url_new_window="on" button_text="Test" _builder_version="4.19.0" _module_preset="default" custom_button="on" button_text_size="14px" button_text_color="#FFFFFF" button_bg_color="#25d366" button_border_width="10px" button_border_color="RGBA(255,255,255,0)" button_letter_spacing="1px" button_font="Montserrat|||on|||||" button_icon="||fa||400" button_icon_color="#FFFFFF" button_on_hover="off" hover_enabled="0" global_colors_info="{}" sticky_enabled="0"][/et_pb_button]

    Wie kann ich das lösen? Kann man mit PHP Echo das irgendwie mache? Wenn ich da wo der Shortcode ausgegeben werden soll in der SQL Tabelle einfach das einfüge: <?php echo"[HIERSHORTCODE]"; ?> bekomme ich zwar meinen Text ausgegeben, aber der Link geht kaputt.

    Hoffe ich konnte es einigermaßen erklären und freue mich über einen Tip.

    LG Christian
     
  2. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.660
    Zustimmungen:
    1.783
    Du kannst Dich z.B. über den do_shortcode_tag Filter in die Ausgabe des etp_pb_button Shortcodes hängen und dann Deinen Text entspr. austauschen/ersetzen.

    Ein prinzipiell ähnliches Beispiel siehe hier im Forum.

    Alternativ über den shortcode_atts_{shortcode} Filter (in Deinem Fall also shortcode_atts_etp_pb_button) den Parameter button_url entspr. austauschen/ersetzen.
     
    #2 b3317133, 25. November 2022
    Zuletzt bearbeitet: 25. November 2022
  3. christian_m84

    christian_m84 Member

    Registriert seit:
    24. November 2022
    Beiträge:
    8
    Zustimmungen:
    1
    Hmm, dann ist aber wahrscheinlich jeder Button so "ersetzt" oder? Mir geht es nur um diesen einen Button.

    Auch wenn ich den Button dann nicht mehr im Visual Builder sehe - könnte ich den Code nicht direkt an der richtigen Stelle in die SQL Tabelle schreiben? Also z.B. so:

    <a href="https://wa.me/123456?text=Bezeichnung:<?php echo '[shortcode-bezeichnung]';?>">Link</a>

    Keine Ahnung ob das geht mit dem Echo innerhalb eines HTML Links... aber theoretisch vielleicht. Ansonsten denke ich vielleicht auch zu kompliziert, denn am Ende möchte ich nur, dass mit dem Link/Button die Websiteadresse mit (in meinem Fall) an WhatsApp übergeben wird.
     
  4. r23

    r23 Well-Known Member

    Registriert seit:
    9. Dezember 2006
    Beiträge:
    7.346
    Zustimmungen:
    587
    kannst du auf [et_pb_button button_url="https://www.muster.de?text= ] bei dem Button nicht verzichten? und den erzeugten HTMl Code
    dann entsprechend ändern?
     
  5. christian_m84

    christian_m84 Member

    Registriert seit:
    24. November 2022
    Beiträge:
    8
    Zustimmungen:
    1
    du meinst also den Button ohne Link erzeugen und den Link dann direkt in den Code schreiben?
     
  6. r23

    r23 Well-Known Member

    Registriert seit:
    9. Dezember 2006
    Beiträge:
    7.346
    Zustimmungen:
    587
    das hier
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    erzeut vermutlich einen gültigen HTML Code für einen Button.

    Diesen HTML Code würde ich an der gewünschten Stelle einfügen als HTML

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    mit PHP kann man den Shortcode dann mit do_shortcode ausfürhen. mein Editor akzeptiert in HTML Code auch shortcodes. einfach ausprobieren was bei dir dann funktioniert.
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden