在插件中执行Java脚本

时间:2014-08-14 作者:Zach

我正在尝试使用我正在构建的插件的短代码显示谷歌地图,但我无法让它工作。有人对此有什么建议吗?这是我的代码:

add_shortcode( \'show_map\', array(\'hotSpot\', \'create_map\'));
function create_map() {
?>
<script src="https://maps.googleapis.com/maps/api/js"></script>
<script>
  function initialize() {
    var map_canvas = document.getElementById(\'map_canvas\');
    var map_options = {
      center: new google.maps.LatLng(34.040819,-84.604660),
      zoom: 14,
      mapTypeId: google.maps.MapTypeId.ROADMAP
    }
    var map = new google.maps.Map(map_canvas, map_options)
  }
  google.maps.event.addDomListener(window, \'load\', initialize);
</script>

<?php 
return \'<div id="map_canvas"></div>\';    
}

1 个回复
SO网友:Welcher

根据我所看到的,您似乎没有正确调用create\\u map函数。

add_shortcode() 接受2个参数,即短代码的名称和调用时呈现的函数。

您传递的数组是如何在类内调用方法。你基本上是说打电话给create_map 方法hotSpot

假设此代码不在hotSpot类中-请尝试以下操作:

//change
add_shortcode( \'show_map\', array(\'hotSpot\', \'create_map\'));

//to 
add_shortcode( \'show_map\',\'create_map\');
希望这有帮助!

结束

相关推荐

Call Shortcode on wp_footer

是否可以在帖子/页面内容区域之外调用快捷码?我试图用以下代码将其添加到wp\\U页脚,但它返回字符串:add_shortcode(\'eps_pop\', \'init\'); function indtable_display_front_end($atts ) { global $post; extract( shortcode_atts( array( \'id\' => \'\' ), $atts ) );&#x