上下文
我已经继承了使用Google Maps JavaScript API的旧版工作WP网站。由于现在必须使用API密钥,因此地图才能正确显示,但是弹出错误提示“此页面无法正确加载Google地图”,并且地图显示为灰色且已禁用
我到目前为止所做的事情
密钥
我已经注册,现在有了我的密钥,它已为Maps JavaScript API启用,也已为网站启用。 (实际上还没有限制,首先我想看看代码是否有效,然后再进行限制)
源
(Disclamer:这里是WP和PHP新手,很抱歉,至少JavaScript不错)
我搜索了Google文档,发现了这一点:
<脚本异步延迟src =“ https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap” type =“ text / javascript”> 似乎很清楚
我阅读了有关wp_register_script
和wp_enqueue_script
的WP文档,这似乎很清楚。
问题
尽管有前戏,我仍然不知道应该修改什么以及如何修改。我在现有资源中找到的实际行:
wp_register_script( 'google-maps-api', esc_url( add_query_arg( array( 'v' => 3, 'sensor' => 'false' ), is_ssl() ? 'https://maps-api-ssl.google.com/maps/api/js' : 'http://maps.google.com/maps/api/js' ) ), array(), VERSION, true );
...
...
wp_enqueue_script( 'google-maps-api' );
javascript网址似乎与我在当前Google文档中发现的网址有所不同
我不知道是否应该修改此url以添加key参数(那些较旧的url接受Key =参数?)还是应该添加一个具有该url的新注册脚本,该字符串与当前google文档所说的相同(并且离开旧的?)我不知道如何用参数(键)注册脚本URL。
答案 0 :(得分:2)
尝试:
注释使脚本与Google Maps api的旧ULR排队的代码行。
使用以下几行将google maps api新脚本(带有新URL)加入队列。
wp_register_script( 'google-maps-api', esc_url( add_query_arg( array('key'=>'YOUR_API_KEY', 'callback'=>'initMap'), 'https://maps.googleapis.com/maps/api/js' ) ), array(), VERSION, true );
wp_enqueue_script( 'google-maps-api' );
将“ YOUR_API_KEY”替换为api键的实际值。
希望这对您有用。请让我知道。