/ / wordpress: Eine Möglichkeit, einen Shortcode auszuführen, wenn auf eine Schaltfläche geklickt wird - jquery, wordpress, shortcode

wordpress: Eine Möglichkeit, Shortcode auszuführen, wenn auf die Schaltfläche geklickt wird - jquery, wordpress, shortcode

Ich bin neu bei WordPress und habe welcheProbleme mit Kurzwahlen: Ich habe versucht, einen Shortcode (gridfx) auszuführen, wenn Inhalt geladen wird und tatsächlich, wenn auf eine Registerkarte geklickt wird und der Bereich mit den Registerkarten sichtbar ist (wo der Shortcode-Inhalt hingehört). Ich erreiche es so:

jQuery(document).ready(function() {
jQuery("#docu").click(function() {
<?php
$short = "[gridfx theme="light" posttypes="product" postids="".$postids ."" include_terms=75,70,72,76,84,223,225,221,219,194,192,193,191 single_show_content=9 show_overlay_title_v2=0 show_overlay_title=0 sortmenu=0 instantsearch=0 columns=3 items_container_width=100 excerpt_below_title=15]";
$sh = do_shortcode($short); ?>
jQuery(".short").text("<?php echo $sh ?>");

});

});

aber das Ergebnis in Firefox vor Ort aktualisieren ist wie folgt: jQuery (". short"). text ("

")}
und das Ergebnis wird falsch angezeigt(HTML ist kaputt). Der Shortcode wird also beim Seitenladen ausgeführt und nicht beim Klickereignis. Gibt es einen Weg, dies zu erreichen? Der Grund, den ich frage, ist, dass das Laden von Inhalten von Shortcodes in einen nicht sichtbaren Bereich dazu führt, dass das Ergebnis des Shortcodes nicht oder nur mit einer Höhe von 1 Pixel angezeigt wird. (In meinem Fall) Shortcode in einem Tab-Bereich. Grundsätzlich scheint es, dass der Shortcode beim Laden einer Seite ausgeführt wird und nicht bei der Anzeige eines Tab-Bereichs, wenn auf das Tab-Navigationsfeld geklickt wird. Ich brauche einen Rat, bitte! Danke vielmals! jimmi4u

Antworten:

0 für die Antwort № 1

Du benutzt .text( ... ) um den Inhalt hinzuzufügen. Aber das entfernt alles HTML. Und Sie müssen möglicherweise Schrägstriche hinzufügen

jQuery(".short").html("<?php echo addslashes($sh); ?>");

Wenn dies nicht funktioniert, liegt ein Fehler in der Konsole vor?


0 für die Antwort № 2

Weisen Sie Ihre <?php echo $sh ?> auf eine Variable Versuche dies :

var sh = "<?php echo $sh ?>";
$(".short").html(sh);