javascript - 如何修改使用 Goole Maps Javascript API 的现有工作 WP 站点以使用密钥?
问题描述
语境
我继承了一个使用 Google Maps JavaScript API 的旧版工作 WP 站点。由于 API 密钥现在是强制性的,因此地图正确显示,但弹出错误提示“此页面无法正确加载 Google 地图”并且地图呈灰色并禁用
到目前为止我所做的
钥匙
我注册了,现在我有了我的密钥,它已为 Maps JavaScript API 启用,也为该站点启用。(实际上还没有限制,首先我想看看代码是否有效,然后我要限制)
来源
(免责声明:WP 和 PHP 新手在这里很抱歉,至少 JavaScript 还可以)
- 我检查了现有的源,并得出结论它使用 Maps JavaScript API。它似乎当然不是最新的
我找了谷歌文档,发现了这个:
<script async defer src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap" type="text/javascript"></script> 似乎很清楚
我阅读了 WP 文档
wp_register_script
,wp_enqueue_script
似乎很清楚。
问题
尽管有这个前戏,我仍然不知道应该修改什么以及如何修改。我在现有来源中找到的实际行:
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 url 似乎与我在当前 Google 文档中找到的有点不同
我不知道是否应该修改此 url 以添加 key 参数(那些较旧的 url 接受 Key= 参数?)或者我应该添加一个新的注册脚本,该脚本与当前 google 文档所说的完全相同(并且也保留旧的那些?)我不知道如何使用参数(键)注册脚本 url。
解决方案
尝试:
注释掉使用 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 密钥的实际值。
希望这对你有用。请告诉我。
推荐阅读
- python - python - 如何创建 if-else 条件以在 pandas 中获取最大值?
- python - 使用 Python Pandas 创建非常规图表
- javascript - 在手机/平板电脑屏幕上呈现光标的最佳策略?
- amazon-web-services - AWS 安全选项n
- python - 获取 InvalidArgumentError:NewRandomAccessFile 在自定义图像数据集上使用 tf.data 时无法创建/打开
- r - 创建具有不同帐号的表,R中的第一个日期
- scala - Scala:覆盖采用隐式参数的方法的首选方法?
- c# - Array.Sum() 导致溢出
- reactjs - 类已经存在时的条件 CSS 样式问题
- swift - 在 Swift 中声明字典的不同方法?