Tôi đang cố gắng để tải Google Maps API trong một lớp học quản trị WordPress sử dụng cú pháp sau:Đang tải Google Maps API với wp_enqueue_script
add_action('admin_enqueue_scripts', array(&$this, 'load_google_maps'));
...
function load_google_maps()
{
// The actual API key is configured in an options page
$key = get_option('google_maps_api_key');
$gmaps_url = 'http://maps.googleapis.com/maps/api/js?key=' . $key . '&sensor=false';
wp_enqueue_script('google-maps', $gmaps_url, NULL, NULL);
}
WordPress được thoát khỏi "&" tới "& # 038". Điều này thực sự làm cho máy chủ Google từ chối yêu cầu. Khi tôi nhập trực tiếp vào thanh địa chỉ của trình duyệt với "& sensor = false" ở cuối, nó tải tốt.
Tôi thấy lỗi thuộc loại này được đề cập trong hệ thống WordPress trac: http://core.trac.wordpress.org/ticket/9243 nhưng đã bị loại bỏ là không hợp lệ và quản trị viên trả lời yêu cầu bằng cách nào đó rằng cách tiếp cận "& # 038" vẫn ổn. Nó chắc chắn là không tốt từ quan điểm của Google.
Tôi có thể tất nhiên chỉ nhận được hàm để lặp lại HTML dưới dạng thẻ tập lệnh, nhưng tôi muốn sử dụng hệ thống wp_enqueue_script nếu có thể.
Bất kỳ ai biết giải pháp cho điều này?
Chúc mừng,
Raff
Xin lỗi vì phản hồi chậm - Tôi đã vắng mặt. Cảm ơn rất nhiều Hobo - vâng, nó đơn giản như vậy. Thay thế '&' bằng '&' hoạt động hoàn hảo. – raffjones
Tuyệt vời - rất vui khi được nghe. – Hobo
Gọi API Google Maps, ít nhất cho phiên bản 3.X trở lên, hoạt động chính xác với & trong URL. Google đang chuyển đổi mã hex trở lại thành đơn giản và trước khi phân tích cú pháp các tham số. Bạn có thể xác minh điều này bằng cách gọi trực tiếp API V3 của Google Maps với & thay cho & để chuyển thông số hoặc bằng cách sử dụng Firefox + Firebug và xem danh sách tập lệnh của bạn. –