I'm trying to use PHP variables inside a javascript function. What's a proper way to use a WP function like get_current_user_id() inside a script that get's enqueued via wp_enqueue_script? Right now I get this error
Error:Call to undefined function...
myscript.php
<?php header('Content-Type', 'text/javascript');
?>
jQuery(document).ready(function(){
jQuery("#location option").each(function () {
if (jQuery.inArray(jQuery(this).val(), locs) != -1) {
jQuery(this).prop('selected', true);
};
});
if ( typeof jQuery.fn.chosen !== 'undefined' ){
<?php
$userID=get_current_user_id();
if($userID=='3') {
$max=6;
} else {
$max=3;
}
?>
jQuery("#location").chosen({ max_selected_options: "<?php echo $max; ?>"
});
}
jQuery('select').each(function(index) {
jQuery(this).chosen({
disable_search_threshold: 1
});
})
});
in functions.php:
add_action('wp_enqueue_scripts','wordpress_scripts');
function wordpress_scripts() {
wp_register_script( 'chosen', get_template_directory_uri() . '/assets/libraries/chosen/chosen.jquery.min.js', array( 'jquery' ),'',true);
wp_enqueue_script( 'chosen' );
wp_register_script('myscript', get_template_directory_uri().'/assets/js/myscript.php', array('jquery'),'',true);
wp_enqueue_script('myscript');
}
Any suggestions to make this work?
wp_localize_scriptmight be an idea?