Come eseguire uno shortcode con JavaScript
2 ott 2017, 17:15:50
Visualizzazioni: 28.2K
Voti: 4
Supponiamo di avere questo shortcode:
[spu-close class="" text="" align=""]
Voglio mostrare questo shortcode quando clicco su un pulsante, questo è il mio HTML:
<input class="button b" onclick="openFile(link);" type="button" value="download" />
e questo è il mio file JavaScript:
function openFile(link){
//Voglio fare qualcosa del genere
do_shortcode('[spu-close class="" text="" align=""]', false );
//
}
Non so come fare questo, qualcuno può aiutarmi?

Doppy
41
Commenti
Tutte le risposte alla domanda
1
1
per eseguire uno "ShortCode" che sta lato server (WordPress/PHP) da JavaScript che sta lato client, avrai bisogno di usare AJAX!
Puoi usare qualcosa come:
1-nel tuo file .js enqueued:
jQuery(document).ready(function($) {
$('.buttonClass').on('click', function() {
$.ajax({
url: Param.doShortCode,
type: 'POST',
data: {
action: 'handle_ajax_shortcode',
},
success: function() {
//fai qualcosa in caso di successo
},
error: function() {
//fai qualcosa in caso di errore
}
})
})
});
2- nel file php:
//localizza il tuo script
$Param = array(
'doShortCode'=>admin_url( 'admin-ajax.php' ),
);
wp_localize_script('handle_ajax_shortcode','Param', $Param);
//esegue per utenti non loggati
add_action( 'wp_ajax_nopriv_handle_ajax_shortcode', 'handle_ajax_shortcode' );
//esegue per utenti loggati
add_action( 'wp_ajax_handle_ajax_shortcode', 'handle_ajax_shortcode' );
function handle_ajax_shortcode(){
//inserisci qui quello che vuoi eseguire quando viene triggerato l'evento JavaScript
do_shortcode( string $content, bool $ignore_html = false )
// Non dimenticare di fermare l'esecuzione dopo
wp_die();
}
per maggiori informazioni puoi controllare Link1 & Link2 & Link3

IBRAHIM EZZAT
269
2 ott 2017 19:40:44
Commenti
Un utente anonimo fa notare che stai impostando l'azione due volte: una nell'URL e una nel corpo del post.

13 feb 2024 17:46:04
Domande correlate
2
risposte
1
risposte