Вот, вчера Mauzer попросил меня написать плагин для WordPress с простой функциональностью: отображать Яндекс.Карты в ваших постах и страницах. Я взял за основу Google Maps for WordPress, и вот — плагин готов. Возможно кому-то он будет полезен — Яндекс.Карты, в отличии от Google Maps содержат подробные карты крупных городов Украины и России.
Translations:
- English version of this documentation is available here.
Описание:
Плагин позволяет встраивать Яндекс.Карты в ваши записи и страницы в WordPress. В отличии от Google Maps, это позволяет вставлять карты больших городов Украины и России.
В картах можно включать либо выключать кнопки увеления, миникарту и переключения вида карты. Требуется PHP5. Есть поддержка WordPress MU.
Скачать:
- Последняя версия Yandex Maps for WordPress
- Страница в официальном репозитории WordPress
- SVN
Демонстрация:
Установка:
- Скачайте плагин, и скопируйте в /wp-content/plugins
- В странице администрирования блога, зайдите в раздел Plugins и активируйте модуль
- Вверху страницы появится сообщение о том, что необходимо ввести API-ключ. Его можно получить по адресу http://api.yandex.ru/maps/form.xml
Использование
- Зайдите в создание записи или страницы
- Внизу, под полем ввода текста появится новая панель “Yandex Maps for WordPress”
- Заполните поля, причём
- Location name – заголовок сообщения, которое появится рядом с точкой на карте
- Address – адрес, в который небоходимо вставить точку
- Location Description – тело сообщения, которое появится рядом с точкой на карте (можно использовать HTML, но не стоит использоват одиночную ковычку)
- Map width \ height – размер карты
- Enable Zoom/Pan Controls – показывает элементы управления картой
- Enable Map Type Controls (Map, Satellite, or Hybrid) – показывает элементы управления типом карты (улицы, спутниковая, гибрид)
- Нажмите на кнопку “Send to map editor”
Скриншоты:



[UPD] Добавил поддержку WordPress MU.
[UPD-2] Сделал небольшой фикс , должно исправить проблему с приёмом ключа. Попробуйте обновится до версии 1.2 (скоро будет доступно в репозитории).
[UPD-3] Еще новая версия, исправляет исчезающие посты в админке. Попробуйте обновится до версии 1.2.1 (скоро будет доступно в репозитории).


чудовий плагін! я вдячний
А название поменяешь?
та нема за що, головне щоб працював нормально.
Он уже в репозитории с таким названием, извини :) Впрочем, могу тут где-нибудь дописать, если хочешь.
И как тебе удалось такой ник зарегить? :))
это такая уличная магия
Openid называется
[...] друг Миша, сделал плагин, который позволяет вставлять Яндекс.Карты в WordPress. Что [...]
круто, а для xoops модно его переделать?
мне кажется, что для xoops его проще переписать, чем переделать ) хотя я вообще структуру модулей для xoops не знаю :)
[...] плагина: Михаил (Mee) Плагин позволяет встраивать Яндекс.Карты в ваши [...]
а у меня не принимает мой АПИ-ключ
Если не принимает ключ, то это делает Яндекс. У вас с ним точно всё в порядке? Может что-то лишнее захватили?
пару раз проверял.
И создал новый ключ – тоже не помогает.
Пишет такое:
Вы уверены, что хотите это сделать?
Пожалуйста, попробуйте ещё раз.
Аналогичная проблема – при вводе API пишет Вы уверены, что хотите это сделать?
Пожалуйста, попробуйте ещё раз.
Повторение не помогает, что можно сделать? Может конфликт с каким-то плагином?
MyRivne, напиши пожалуйста, как вышел из ситуации, у меня та же ерунда
Привет,
та пока никак не решил. Думаю, что это глюк у плагина. :(
Блин, но как то у тебя работает.
Я вчера пробовал гугловский (с которого этот и писался) поставить, сразу заработал, API принял, а тут постоянно – Пожалуйста, попробуйте ещё раз
Залез в код, нашел строчку key= , думаю подставлю напрямую :) – фиг там
Недосмотрел, это у тебя картинка :)
нет, ну у меня работает вот тут:
http://blog.meelk.com.ua/about/yandex-maps-for-wo...
И не у меня вот тут:
http://uletay.org/2009/02/plagin-yandekskarty-dly...
к сожалению сейчас не могу посмотреть и подебажить, если у вас будет какое-то решение – буду рад внести изменения. (ну и по возможности посмотрю сам что там)
на WP 2.7.1 не работает :(((
Как активирую плагин, сразу страницы пропадают.
Т.е. количество показывает, а чтобы редактировать – пустая страница.
Смотрю – наши ряди пополняются, у кого плагин не работает.
вот уж не знаю, с чем он может конфликтировать :(
Спасибо, будем разбираться.
Сделал небольшой фикс , должно исправить проблему с приёмом ключа. Попробуйте обновится до версии 1.12 (скоро будет доступно в репозитории).ф
Проблему с приемом ключа эта версия исправила.
Теперь перестал показываться список постов в админке…
Привет,
Как обновиться вручную или скачать новую версию?
Зашел в админку – нет объявления, что могу на автомате обновить этот плагин.
Да, там что-то неясно с СВНом у Вордпресса. Считает, что версия 1.11 новее чем 1.2. Так что лучше скачать и вручную распаковать в /wp-content/plugins/
Да, об этом писали чуть выше. Сейчас времени очень мало, как будет больше – посмотрю. (рад, что проблема исчезла)
попробуйте обновится до 2.1.1 – там эта проблема вроде исправлена )
Спасибо, обновился, всё заработало.
Скажите, а можно как-то сделать, чтобы плагин отображал форму поиска по Яндекс-картам и выводил фрагмент карт с тем населённым пуктом, который юзер ищет?
Супер, уже работает!
Спасибо!
Тут пример работы: http://www.myrivne.org/blog/?p=282
Ура! Спасибо за помощь в поиске багов :)
Конструктивная критика.
Если на карту надо поставить 2 или 3 объекта – плагин этого не делает.
Миникарту надо поставить в правый нижний угол а еще лучше сделать опциональной.
Ну и еще до кучи добавить загрузку уникальных иконок.
Спасибо за ваши идеи.
С картой действительно так можно будет сделать – главное не забыть.
Насчёт двух-трёх объектов и загрузки иконок тут небольшая проблема связанная именно с использованием шорт-кодов для описания карт, тут надо подумать как лучше это реализовать.
Предложения:
1. Добавьте поддержку PHP >=4.3, пожалуйста, не все хостинги продвинутые :-(
2. Было бы просто супер иметь возможность размещать не одну, а несколько точек с описанием (балуном)
3. Возможность задавать иконку для обозначения точки
4. Работа с kml/kmz-aайлами – загрузка списка точек, вывод справа/слева от карты списка точек и т.д.
Спасибо большое за предложения. К сожалению не знаю как сделать пункты 2-4 при помощи шорт-кодов, да и еще так, чтобы пользователям не пришлось изучать "новый язык программирования"
Вот и выходит, что изучать новый язык нужно вам ;-) чтобы сделать достаточно продвинутую админку, поддерживающую такие возможности)
Для примера – в настоящий момент мы пользуемся вот этим сервисом на основе карт Гугл: http://mapchannels.com/view.aspx?ch=kvartoplatdot...
посмотрите, возможно что-то вас и заинтересует. Я был бы только рад, если нам удалось бы перелезть с карт гугла на карты яндекса не без вашей помощи.
Здравствуйте. Искал такой плагин. Даже хотел сам сделать с нуля. Но пока разбираюсь в структуре WP, а заказчик торопит.
Есть идеи, как из хорошего плагина сделать супер:
1. Предусмотреть виджет с картой, на которой можно разместить любое количество точек.
2. Каждая точка может быть привязана к любому посту
3. Несколько точек можно объединять в коллекции
4. Возможность выводить на виджете-карте одну или несколько коллекций
Пример применения: путешествие по городу или загородной местности – это коллекция, каждая точка – очерк с описанием и фотографиями данной точки, при необходимости возможно включать коллекции с местными достопримечательностями, организациями, ориентирами.
Но это потребует дополнение базы данных. Если интересно – могу прислать примерную структуру.
К сожалению в WP недавно, идей полно, а в плагинах пока только начал разбираться.
на 2.8 у кого нить работает?
@ulgent: http://blog.meelk.com.ua/about/yandex-maps-for-wo... — вот тут, на версии 2.8 вполне работает.
@AlexSPb спасибо за ваши пожелания и советы. К сожалению сейчас у меня нет возможности что-то менять, как будет время – обязательно займусь.
))) ясно
Спасибо за плагин, очень полезная штука.
Но есть с ним пара проблем – насколько я понял, несколько карт на одной странице – вызывают проблемы. То есть прорисовывается только одна. Хотя, возможно это зависит от браузера. На хроме и сафари – точно.
Еще, если будете возвращаться к разработке – хорошо бы сделать возможность нескольких маркеров на карте.
Но все равно – спасибо большое.
По поводу карт Украины – google обновляет полностью карту Украины и в данный момент она подробнее и лучше, чем яндексовая…
Ну я бы не сказал, что у Гугла уж так сильно лучше карты. Если внимательно посмотреть – то у них один и тот же поставщик – Транснавиком.
И если реально смотреть на е-картографию Украины, на данный момент просто не существует нормальных карт, так как просто не хороших исходников. Гугл и Яндекс карты сами не рисуют, а покупают. За качество карт в первую очередь отвечает Институт геодезии и картографии, который особо не напрягается поднимать качество карт.
ну П.С.
нужно сказать и на том спасибо, что данный сектор начал развиваться!
А мне вот такое пишет
Плагин не может быть активирован, поскольку он вызвал фатальную ошибку
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home/kannelura/werawolw.ru/docs/wps/wp-content/plugins/yandex-maps-for-wordpress/wp-yandex-maps.php on line 60
Из-за чего такая бяка может быть, подскажите? уж очень нужный плагин, хочется иметь
Ну, как всегда, есть подозрение, что что-то скачалось не так, или не до конца.
Народ… а что делать если город не детализирован до такого уровня чтоб ставить метку по адресу… есть ли возможность в яндекс катах указыать координаты позиционирования?
Извините, что отвечаю с задержкой. Нет, сейчас, указанная строка передаётся прямо в геокодер. Надо будет добавить и эту возможность тоже, спасибо за идею.
Такая же хрень!
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home/kannelura/werawolw.ru/docs/wps/wp-content/plugins/yandex-maps-for-wordpress/wp-yandex-maps.php on line 60
От чего это?
ВП 2.7.1
Плагины:
Блокировка запросов на новые версии,
All in One SEO Pack,
MaxSite Russian Date,
RusToLat,
сforms
Давайте розбиратися. Не могли бы вы выслать свой "/home/kannelura/werawolw.ru/docs/wps/wp-content/plugins/yandex-maps-for-wordpress/wp-yandex-maps.php" ?
Уже разобрался :)
Погуглил и нашел! Проблема в том что стояла версия ПХП4, а он хотел ПХП5.
Надо указать в установке либо еще где!!!
Сорррри, уже увидел что требуется ПХП5 :)))
Тогда надо пояснить, что с ПХП4 будет вылетать ошибка.
А кто нибудь вкурсе как убрать в ДИВЕ, который вставляет Яндекс, его настройки?
style="margin: 10px;
А то не красиво
Да, действительно, я совсем об этом забыл :) прошу прощения
ну, я думаю что где-то после 394 строчки, которая выглядит так:
geoResult.openBalloon(); можно попробовать убрать это свойство жскриптом
А подскажи , плиз, каким скриптом и как.
Ещё нашел один глюк!
Почему то указатель адреса больше самого окна и центрируется не по точке адреса, а по левому краю и получается, если к примеру, окно ширины 450рх, то указатель с названием 600рх и и стрелка не в поле зрения.
Может это не к вам, а к Яндексу?
что-нибудь в стиле $("#div_id").attr("style","");
только надо знать id этого дива и подключить jquery, Ну, это просто в качестве примера.
да, это скорее к Яндексу, я в своем коде просто устанавливаю границы видимой области карты:
map.setBounds(geoResult.getBounds());
Впрочем, возможно что это можно исправить как-то и из кода плагина, но не знаю как.
при активации плагина выдаёт фатальную ошибку как это исправить кто знает
PHP5 активируется в настройках хостинга (в завимисоти от ПО на хосинге), или путём обращения к службе поддержки.
Отличный плагин, спасибо!
Два маленьких вопроса только:
1) как выводить карту сразу в гибриде, а не в схеме?
2) как убрать карту-масштам в левом нижнем углу?
Карту в левом нижнем убрать просто. Достаточно в своем css прописать
.YMaps-mini-map {display: none;}
Тоже вариант, спасибо )
Странно, я вроде бы как отвечал на этот коммент. В общем, я боюсь что на данном этапе развития плагина это можно сделать изменением самого исходного кода, если хотите – расскажу что и где надо править.
карту-масштаб убрать удалось, спасибо (закомментил строку в коде).
но если бы вы подсказали как сразу выводить сразу карту в гибриде (что поменять в коде) было бы просто супер!
Жду с нетерпением!
попробуйте после строчки:
map.addOverlay(geoResult);
добавить вот такую:
map.setCenter(geoResult.getCoordPoint(), 10, YMaps.MapType.HYBRID);
Большое спасибо за помощь!
как раз понять после какой "после строчки" мне и не хватало!
покопался в мануале яндекс.апи , надо после строчки вставить:
map.setType(YMaps.MapType.HYBRID);
и все заработало!
большое спасибо еще раз!
нифига не хочет кушать ключик на 2.7
у кого-нить кроме молчаливого хохла работает?)
Давайте будем взаимовежливы? Да, работает. И на 2.9 тоже.
спасибо за плагин.
у меня были некоторые неполадки, которые помогли устранить специалисты из яндекса. среди прочих они дали и такой непонятный мне совет. может автору плагина будет полезно)
—-
Рекомендуется создавать карту после того, как построилось DOM-дерево, поэтому
лучше обернуть скрипт создания карты в функцию и вызывать ее после загрузки
страницы, например, так:
YMaps.jQuery(function () {
// тут код создания карты
});
Спасибо большое, хорошая идея, надо будет исправить :)
:) Дарова!
Прикольный плагин!
Молодца!
Ругаться не начто и просить нечего на данный момент, зашел проголосовать, а нема голосовалки.
А можно ли сделать показ нескольких объектов отмеченных на разных картах в разных постах на одной?
Например: есть пост Кафе№1 и Кафе№2, но чтобы все точки выводило на одну карту, например с тегом Кафе?
ну, прямо сейчас нельзя, конечно.
Действительно, балун чудит страшно, всю красоту портит. Рыл документацию по API Яндекс.карт, нашел даже (http://api.yandex.ru/maps/jsapi/doc/dg/tasks/how-... но сделать ничего не смог, видимо руки не оттуда растут.
Нид хелп!
а что именно нужно?
2.9.1 ключ принял. Спасибо за плагин. Как можно сделать что бы юзер отметил сам что нить на карте ?
Ооочень нужный плагин, но действительно, без вышеуказанных пунктов область применения ограничена.
Будут ли новые версии?
Спасибо за плагин!!!
На обычной странице всё работает как часы, но вот если попасть на не существующую страницу, то показывается 404 страница наверху которой вот такая ошибка выскакивает:
Warning: Invalid argument supplied for foreach() in /home/site/public_html/wp-content/plugins/yandex-maps-for-wordpress/wp-yandex-maps.php on line 163
Не подскажете как победить?
И планируется ли в будущем возможность использовать настройки программы только для одной конкретной страницы, чтобы на остальных страницах они не подгружались? А то есть только страница "Контакты", где нужна схема, а больше ни где она не используется…
Спасибо!
Вопрос автору плагина. Подскажите, а как реализовать вывод всех введенных адресов на единой карте? А еще, как сделать, чтобы у каждого адреса, в зависимости от некого поля, выводить разные картинки кнопок – заправка, СТО и т.д.
Спасибо за плагин.
У меня карта получилась разбита на квадраты (см. http://flowers29.ru/?page_id=2).
дело вот в этом правиле у вас в СSS:
.post img {
-moz-border-radius:3px 3px 3px 3px;
background-color:#F3F3F3;
border:1px solid #DDDDDD;
padding:5px;
}
К сожалению этих возможностей в данном плагине нет.
на 2.9 не грузит карту только серое окно, стал плагин нормально ключ принят не отображает в чем проблема подскажите плизз?
а дайте-ка ссылочку?
плагин еще поддерживается? обнаружил ошибку при отображении больше одной карты http://krasbilliard.ru/bilyardnye-zaly-v-krasnoya...
если нет, то и сам покопаюсь, конечно…
а вообще спасибо за плагин (:
вобщем надо создание объекта map заменить на var map_{$this->mapNum} = … и будет работать несколько карт на странице
еще че то все не могу отцентрировать адрес на карте, че то туплю в доках
спасибо большое, надо будет внести изменения, и обновить плагин в репозитории.
Ребята, подскажите пожалуйста в чем может быть проблема.
Всплывающая подсказка отображается с какими то непонятными отступами и сразу портиться внешний вид карты.
Пример: http://ipicture.ru/uploads/100803/IXR82BGAxY.jpg
PS: wordpress 3.0.1 тема стандартная Twenty Ten 1.0. Пробовал отключать различные плагины – не помогло. Карта на странице одна единсвенная. Помогите пожалуйста.
тут уже у кого-то была такая проблема, у каких-то элементов в ЦСС отступы стоят. Скорее всего у img.
прям как у меня было
это стили таблицы в css темы. создайте свои стили что-то типа #content table td {padding: 0; margin: 0;} и для других элементов, которые дают отступы
спасибо!