Metodo delle migliori pratiche
Dai un'occhiata wp_localize_script
, che dovrebbe fare esattamente questo.
Ma richiede un utilizzo precedente diwp_enqueue_scripts
, quindi dovrai spostare il tuo JS in un file separato.
Vale sicuramente la pena di quei pochi minuti di sforzo.
function wpse_96370_scripts()
{
if ( is_single() ) {
wp_register_script(
'your_script_handle',
get_template_directory_uri() . '/js/your-script.js',
array( /* dependencies*/ ),
1.0,
true
);
wp_enqueue_script( 'your-script-handle' );
$script_params = array(
/* examples */
'post' => 99,
'users' => array( 1, 20, 2049 )
);
wp_localize_script( 'your-script-handle', 'scriptParams', $script_params );
}
}
add_action( 'wp_enqueue_scripts', 'wpse_96370_scripts' );
In JS sarai quindi in grado di utilizzare i parametri passati in questo modo:
var posts = scriptParams.post,
secondUser = scriptParams.users[1]; /* index starts at 0 */
// iterate over users
for ( var i = 0; i < scriptParams.users.length; i++ ) {
alert( scriptParams.users[i] );
}
[Modifica] La tua situazione
Come da tuo commento
Ho creato una nuova tabella db con alcune response.id
s di api di facebook. Questa è la tabella: action_id, user_id, post_id, fb_id dove fb_id è response.id da un'azione di Facebook. Quindi in single.php ho un pulsante in cui se premo devo eliminare l'azione fb con api: FB.api('/'+fb.response, 'delete');
dove fb.response
dovrebbe essere fb_id
dalla tabella.
Inserisci la seguente /js/
cartella del tuo tema , creala, se non esiste.
Chiamiamo il file fb-response.js
:
jQuery( '#button_id' ).click( function() {
FB.api( '/' + fbParams.id, 'delete' );
});
Quindi registrati, accodati e localizza come visto sopra. Supponendo che tu abbia l'ID che desideri trasmettere, diciamo $fb_id
:
wp_register_script(
'fb-response',
get_template_directory_uri() . '/js/fb-response.js',
array( 'jquery' ),
1.0,
true
);
wp_enqueue_script( 'fb-response' );
wp_localize_script( 'fb-response', 'fbParams', array( 'id' => $fb_id ) );
NB Ovviamente, quanto sopra presuppone che questo sia in tema. Se stiamo parlando di "plugin", modifica le posizioni di conseguenza.