将wordpress $ current_user-> ID从php文件发送到外部Javascript文件

时间:2011-11-03 05:35:37

标签: php javascript jquery wordpress google-maps

我正在尝试将KML文件动态加载到地图中,具体取决于哪个好友按下用户登录。当我在javascript文件中对userID进行硬编码时,一切正常,但是我需要它来动态加载当前用户的用户ID

这是javascript文件:

    function initialize(){
    //MAP
      //manually set user ID to zero
      //var current_user =0; 
      var current_user;
      //var current_user = "<?php get_currentuserinfo(); echo $current_user->ID?>"
      var latlng = new google.maps.LatLng(90.64138205695923,-45.38903528363647);
      var options = {
         zoom: 16,
         center: latlng,
         mapTypeId: google.maps.MapTypeId.ROADMAP
         };

      map = new google.maps.Map(document.getElementById("map_canvas"), options);

      var kmlLayer = new google.maps.KmlLayer('http://www.mysite.com/timeline_'+current_user+'.kml');
      kmlLayer.setMap(map);  

这就是我在php文件中的循环内容:

    $("#address1").click( function() {
                initialize();
                var currentUser = <?php get_currentuserinfo(); echo $current_user->ID?>;
                    $current_user = currentUser;

                });

就像我提到的那样,如果我硬编码用户ID,它会起作用,但我不确定如何将UserID从PHP传递到javascript文件。

1 个答案:

答案 0 :(得分:1)

正如我之前的评论所说,我认为这将解决您的问题:

在js文件中:

...
function initialize(current_user) {
    ...
}
...

在php中:

...
<script type="text/javascript">
    $("#address1").click( function() {
        initialize(<?=json_encode($current_user->ID)?>);
    });
</script>
...