Pass PHP variables to Javascript

I’ve implemented a custom Google Maps script as a WordPress shortcode but I have a problem with some of the values that are defined in the .js file but generated by WordPress through PHP

This is the .js file:

Read More
//set your google maps parameters
var latitude = 41.03328,
    longitude = 21.30281,
    map_zoom = 16;

//google map custom marker icon - .png fallback for IE11
var is_internetExplorer11= navigator.userAgent.toLowerCase().indexOf('trident') > -1;
var marker_url = ( is_internetExplorer11 ) ? 'img/cd-icon-location.png' : 'img/cd-icon-location.svg';

//define the basic color of your map, plus a value for saturation and brightness
var main_color = '#00e1ff',
    saturation_value= -20,
    brightness_value= 5;

What I need to do is get the WordPress theme directory for the images on line:

'img/cd-icon-location.png' : 'img/cd-icon-location.svg'

and for var main_color = '#00e1ff', get this value from PHP

<?php echo oneengine_option( 'main_color' ); ?>

Related posts

Leave a Reply

2 comments

  1. What I usually do to get JS values using PHP is declaring them before importing the JS script or the written code

    <?php
        echo '<script type="text/javascript">var main_color = "'.$main_color.'";</script>';
    ?>
    
    <script type="text/javascript" src="someJSScript.js">
        //If not in separate file, JS code will go here
    </script>
    
  2. Echo the PHP variables you need into Javascript variables inside of your theme files and reference the JS variables inside of your script files.

    Theme files:

    <script>
        var config_theme_directory = "<?=get_template_directory()?>";
    </script>
    

    Included JS file:

    console.log( config_theme_directory );