Вывод трека в формате gpx на карту Яндекс

С выходом нового API 2.x Яндекс.Карт вывод трека в формате gpx на карту стал очень простым. Теперь не надо регистрироваться, не нужен API key.

Итак, нам понадобится, собственно, сам трек и несколько строк кода. Я скачал трек из Интернета (называется он 3941.gpx), положил его в папку и в ней же создал файл index.html со следующим содержимым:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Примеры. Загрузка XML.</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<script src="http://api-maps.yandex.ru/2.0/?load=package.full&amp;amp;amp;lang=ru-RU"
type="text/javascript"></script>
<script type="text/javascript">
ymaps.ready(init);
function init () {
var myMap = new ymaps.Map("map", {
center: [52.646573, 39.519488],
zoom: 9
});
ymaps.geoXml.load('3941.gpx')
.then(function (res) {
myMap.geoObjects.add(res.geoObjects);
});
}
</script>
</head>

<body>
<h1>Вывод gpx трека на карту Яндекса</h1>
<div id="map" style="width: 800px; height: 600px"></div>
</body>
</html> 

В строке 10 создается новая карта, центр которой имеет координаты 52.646573, 39.519488, а масштаб равен 9. Координаты центра карты легко узнать, зная где проходит трек. Мой трек проходит к северо-западу от Липецка. Заходим на Яндекс.Карты, выбираем инструмент «Получить информацию»  и кликаем по любой точке, которая находится рядом с нашим треком:

Узнать координаты точки на карте

Узнать координаты точки на карте

Слева от карты видим координаты выбранной точки — вот их мы и указываем в строке 10


center: [52.646573, 39.519488]

Обратите внимание — сначала указывается широта, потом долгота.

В 14-й строке мы загружаем наш трек и выводим его на карту. В итоге получилась вот такая картина — пример вывода gpx трека на карту

Уверен, что процедура нахождения центра карты для вывода трека вас не очень обрадовала, поэтому далее мы сделаем так, чтобы трек выводился автоматически. Т. е. масштаб и расположение трека на карте сделает сам API Яндекса. Измененный index.html будет выглядеть вот так:


<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Примеры. Загрузка XML.</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<script src="http://api-maps.yandex.ru/2.0/?load=package.full&amp;amp;lang=ru-RU"
type="text/javascript"></script>
<script type="text/javascript">
ymaps.ready(init);

function init () {
var myMap = new ymaps.Map("map", {
center: [52.646573, 39.519488],
zoom: 9
});
ymaps.geoXml.load('3941.gpx')
.then(function (res) {
res.geoObjects.options.set({
balloonContentBodyLayout: ymaps.templateLayoutFactory.createClass(
'$[properties.velocity]'
)
});

myMap.geoObjects.add(res.geoObjects);
if (res.geoObjects.properties.get('boundedBy')) {
myMap.setBounds(res.geoObjects.properties.get('boundedBy'), {
checkZoomRange: true
});
}
});
}
</script>
</head>
<body>
<h1>Вывод gpx трека на карту Яндекса</h1>
<div id="map" style="width: 800px; height: 600px"></div>
</body>
</html>

А итоговый вариант вот так — вывод gpx трека на Яндекс.Карты

Рубрика: Программирование, Создание сайтов | Метки: , , , | 4 комментария

WordPress — получить количество записей в категории

Так сказать, заметка на память, может кому-то пригодится. Итак, узнать сколько постов содержит категория, можно вот так:

<?php echo get_category(ID категории)->category_count; ?>

Функция get_category вообще очень полезная. Достаточно передать в нее ID интересующей нас рубрики, и она выдаст массу интересной информации. Например:

  • term_id – ID категории,
  • name – название категории,
  • slug – ярлык категории,
  • description – описание категории,
  • parent – ID родительской категории,
  • count – количество постов в категории (это мы уже знаем),
  • term_group – значение колонки term_group в БД,
  • term_taxonomy_id – ID таксономии, у категорий он равен 1,
  • taxonomy – название таксономии, для категорий – category

Как видим, функция очень полезная и рамки ее использования не ограничиваются только получением количества записей в рубрике.

И еще — у функции есть второй параметр, который определяет в каком виде она вернет результат. Мы можем указать либо ассоциативный массив ARRAY_A, либо индексированный массив ARRAY_N. Таким образом, вызов функции будет выглядеть так:

echo get_category(ID категории,'ARRAY_A');

для ассоциативного массива или

echo get_category(ID категории,'ARRAY_N');

для индексированного.

 

 

Рубрика: CMS, PHP, WordPress, Программирование | Метки: , , | 9 комментариев

Русскоязычная википедия перестала работать.

Печально, но в ночь на 10-е июля русскоязычная википедия прекратила работу

Русскоязычная википедия не работает

Русскоязычная википедия не работает

«В Государственной Думе пройдёт второе слушание о внесении поправок в «Закон об информации», которые могут привести к созданию внесудебной цензуры всего Интернета в России, в том числе к закрытию доступа к Википедии на русском языке

 

Рубрика: Новости | Метки: , | Добавить комментарий

Узнать стоимость сайта

Раньше для того, чтобы узнать сколько стоит тот или иной сайт я пользовался сервисом bizinformation.org, но он уже довольно давно не работает. Поиски привели на сервис mysitecost. Довольно интересный ресурс. Например, стоимость яндекса составляет $6,754,426,650.00 USD

 

Яндекс стоит $6,754,426,650.00 USD

Яндекс стоит $6,754,426,650.00 USD

 

А вот сайт Google стоит аж $200,576,702,847.00 USD!

Google стоит $200,576,702,847.00 USD

Стоимость сайта google.com

А вот мой скромный блог стоит $319.00 USD 🙂

Стоимость kumatoz.ru

Сколько стоит мой блог

Рубрика: Создание сайтов | 1 комментарий

Кнопка Skype для сайта

Для одного из проектов понадобилось установить кнопку Skype, с помощью которой можно позвонить человеку. Решение оказалось простейшим — идем на сайт Скайпа, вводим логин кому собираемся звонить, настраиваем по вкусу кнопку (можно выбрать статическую или с индикацией статуса) и вставляем сгенерированный код в нужное место сайта.

Кнопка Skype для сайта

Кнопка Skype для сайта
Рубрика: Создание сайтов | Добавить комментарий