/ / wordpress: Uma maneira de executar shortcode quando o botão é clicado - jquery, wordpress, shortcode

wordpress: Uma maneira de executar shortcode quando o botão é clicado - jquery, wordpress, shortcode

Eu sou novo no wordpress e estou tendo algunsproblemas com códigos de acesso: Eu estava tentando executar um código curto (gridfx) quando o conteúdo é carregado e, na verdade, quando uma guia é clicada e a área com guias é visível (para onde o conteúdo do código curto deve ir). Consigo assim:

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 ?>");

});

});

mas o resultado na atualização do Firefox no site é como: jQuery (". short"). text ("

")}
e o resultado está sendo exibido da maneira errada(html está quebrado). Portanto, o código curto está sendo executado no evento de carregamento lateral e não no clique. Existe uma maneira de conseguir isso? A razão pela qual estou perguntando é que o carregamento de conteúdo de códigos de acesso em uma área não visível leva ao ponto de o resultado do código de acesso não ser exibido ou exibido apenas com 1px de altura. (No meu caso). Na verdade, estou executando o shortcode em um painel de guias, basicamente quando o tabnav está sendo clicado, parece que o shortcode é executado com carregamento lateral e não no show de painéis. Preciso de alguns conselhos, por favor! Muito obrigado! jimmi4u

Respostas:

0 para resposta № 1

Você está usando .text( ... ) para adicionar o conteúdo. Mas isso remove todos os html. E você pode precisar adicionar barras

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

Se isso não funcionar, há um erro dentro do console?


0 para resposta № 2

Atribua seu <?php echo $sh ?> para uma variável Tente o seguinte:

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