Есть подобный код карты:
Код:
|
<html>
<head>
<title>Геокодирование с использованием API Google Maps v3</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.8.1.custom.min.js"></script>
<style>
.ui-autocomplete {
background-color: white;
width: 300px;
border: 1px solid #cfcfcf;
list-style-type: none;
padding-left: 0px;
}
</style>
<script type="text/javascript">
var geocoder;
var map;
var marker;
function initialize(){
//Определение карты
var latlng = new google.maps.LatLng(56.329917,44.009191999999985);
var options = {
zoom: 15,
center: latlng,
mapTypeId: google.maps.MapTypeId.SATELLITE
};
map = new google.maps.Map(document.getElementById("map_canvas"), options);
//Определение геокодера
geocoder = new google.maps.Geocoder();
marker = new google.maps.Marker({
map: map,
draggable: true
});
}
$(document).ready(function() {
initialize();
$(function() {
$("#address").autocomplete({
//Определяем значение для адреса при геокодировании
source: function(request, response) {
geocoder.geocode( {'address': request.term}, function(results, status) {
response($.map(results, function(item) {
return {
label: item.formatted_address,
value: item.formatted_address,
latitude: item.geometry.location.lat(),
longitude: item.geometry.location.lng()
}
}));
})
},
//Выполняется при выборе конкретного адреса
select: function(event, ui) {
$("#latitude").val(ui.item.latitude);
$("#longitude").val(ui.item.longitude);
var location = new google.maps.LatLng(ui.item.latitude, ui.item.longitude);
marker.setPosition(location);
map.setCenter(location);
}
});
});
//Добавляем слушателя события обратного геокодирования для маркера при его перемещении
google.maps.event.addListener(marker, 'drag', function() {
geocoder.geocode({'latLng': marker.getPosition()}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (results[0]) {
$('#address').val(results[0].formatted_address);
$('#latitude').val(marker.getPosition().lat());
$('#longitude').val(marker.getPosition().lng());
}
}
});
});
});
</script>
</head>
<body>
<label>Адрес для поиска: </label><input id="address" style="width:600px;" type="text"/>
<div id="map_canvas" style="width:800px; height:600px"></div><br/>
<label>Широта (latitude): </label><input id="latitude" type="text"/><br/>
<label>Длогота (longitude): </label><input id="longitude" type="text"/>
</body>
</html> |
Если создаю отдельную страницу с таким кодом, все работает, если вставляю без тегов head, title, meta, body(т.к. эти теги уже есть) в запись на сайте, отображается только форма адреса.
Можно ли так модифицировать код, что бы потом его вставить в режиме html в редакторе в wordpress, после чего бы корректно отрисовывалось окно и работал скрипт?
Также, более общий вопрос:
как правильно вставлять любой javascript в тело записи, не модифицируя заголовки?