Come eseguire uno shortcode al click di un pulsante

24 gen 2017, 16:39:30
Visualizzazioni: 23.3K
Voti: 1

Voglio eseguire uno shortcode al click di un pulsante / link

<a href="<?php echo do_shortcode( '[wizard id=1]' ); ?>" class="btn" > CLICCA PER APRIRE LO SHORTCODE</a>

ma non funziona.

3
Commenti

[link]<a href="<?php echo do_shortcode( '[wizard id=1]' ); ?>" > Qualsiasi testo per il link</a>

nina nina
24 gen 2017 16:40:49

Cosa stai cercando di fare? ti riferisci all'editor di WordPress,

kirillrocks kirillrocks
24 gen 2017 20:56:53

voto negativo, poiché senza informazioni aggiuntive la domanda confonde lato server e lato client in un modo che la rende impossibile da rispondere

Mark Kaplun Mark Kaplun
25 ago 2017 08:32:10
Tutte le risposte alla domanda 3
0

Non puoi aggiungere direttamente uno shortcode al codice PHP. Tuttavia, ogni shortcode esegue una funzione, quindi puoi semplicemente aggiungere quella funzione al tuo codice del link.

Se il tuo shortcode è qualcosa del genere:

function my_custom_shortcode( $atts, $content= NULL) {
    // funzione dello shortcode
}
add_shortcode ( 'my_custom_shortcode' , 'my_custom_shortcode' );

usa questo nel tuo link:

<a href="<?php my_custom_shortcode(); ?>" class="btn" > CLICCA PER APRIRE LO SHORTCODE</a>
25 gen 2017 04:59:53
0

Per chiamare uno shortcode al click di un pulsante, non puoi usare direttamente PHP all'interno degli attributi HTML come href. Invece, devi utilizzare JavaScript per ottenere questa funzionalità.

<!-- Codice HTML per il pulsante -->
<a href="#" id="shortcodeButton" class="btn">CLICCA PER APRIRE LO SHORTCODE</a>

<!-- Codice JavaScript -->
<script>
    // Aggiungi un event listener al pulsante
    document.getElementById('shortcodeButton').addEventListener('click', function(event) {
        // Previeni il comportamento predefinito del tag anchor
        event.preventDefault();
        
        // Chiama lo shortcode usando JavaScript
        var shortcodeResult = '<?php echo do_shortcode("[wizard id=1]"); ?>';
        
        // Reindirizza o fai qualcosa con il risultato
        // Ad esempio, puoi reindirizzare all'URL risultante
        window.location.href = shortcodeResult;
    });
</script>

La tua funzione shortcode [wizard id=1] è definita correttamente e restituirà l'output desiderato

6 mar 2024 07:16:06
1

Vijay, grazie per il tuo aiuto. Capisco cosa intendi con l'esempio fornito, ma sembra che esegua lo shortcode immediatamente al caricamento della pagina, ma non al clic sul link. C'è un modo per evitarlo? È questo che dovrebbe fare il event.preventDefault(); oppure manca qualcos'altro?

28 ago 2024 20:12:50
Commenti

Aggiungi i tuoi commenti come commento alla risposta di Vijay, non come risposta alla domanda generale.

BlueDogRanch BlueDogRanch
28 ago 2024 20:17:43