Übergeben Sie die dynamische Variable PHP an den Shortcode

Ich bin mir nicht sicher, ob es eine einfache Lösung für mein Problem gibt. Die Anforderung sieht einfach aus, ist aber nicht in der Lage, eine Antwort zu finden, obwohl ich mich 6 Stunden lang den Kopf gebrochen habe. Ich muss Variable von einer PHP-function zu einem Shortcode übergeben und dieser Shortcode muss diese Variable an einen anderen Shortcode übergeben. Shortcode-1 öffnet ein Popup und der Inhalt des Popups wird durch shortcode-2 erzeugt, Inhalt muss basierend auf der Variable geändert werden. Wie kann ich das erreichen?

Code in meiner Vorlage ..

<a href="#" class="open-popup-1" variable= ">   

Popup-Shortcode:

 [modifycontent id=$variable] 

Meine Kurzwahlfunktion

 function modifycontent($atts = [], $content = null) { // do something to $content $var = atts['id']; $content = gettherightcontent($var); return $content; } add_shortcode('mc', 'modifycontent'); 

Ich habe es so versucht, ich konnte meinen Shortcode anrufen, aber ich konnte die Variable nicht passieren.

Solutions Collecting From Web of "Übergeben Sie die dynamische Variable PHP an den Shortcode"

Ich sehe ein paar Fehler in Ihrem Code …

  1. Auf dem HTML gab es kein Zitat vor Variable

  2. Auf dem php sagst du, dass du den short code [modifycontent] aufgerufen hast, aber durch deinen php solltest du [mc] benutzt haben.

Trotzdem, so würde ich es machen:

 function modifycontent ($atts, $content = null ) { $a = shortcode_atts( array( 'id' => '1', ), $atts ); return 'Click here'; } add_shortcode( 'mc-shortcode', 'modifycontent' ); 

dies würde den kurzen Code [mc-shortcode] verwenden, um zurückzugeben:

 Click here 

Wenn Sie dies für den functionscode verwendet haben: [mc-shortcode id = ‘1’]

es würde zurückkehren:

 Click here 

(Beachten Sie die Variablenänderungen)