Яндекс карты — плагин для WordPress

Яндекс карты — наиболее популярный сервис публикации карт на сайте. WordPress — так же является самой популярной системой управления сайтом. Когда возникает необходимость публикации карты на сайте всегда встает вопрос каким образом это реализовать. Те кто разбирается в программировании конечно же могут вставить предлагаемый Яндексом код к себе на сайт. Но данное решение будет не универсальным, т.к. вставляя код непосредственно в контент сайта, мы лишаем пользователя самостоятельно менять геопозицию. В данном случае на помощь приходят плагины.

! Приглашаю разработчиков к совместному развитию плагина.

Настоящий плагин является расширением знаменитого плагина Advanced Custom Fields for WordPress Developers (ACF). В настоящий момент данное расширение умеет выводить карту с географической меткой. Сама же метка может задаваться как в параметрах шорткода, так и может быть привязана к посту или странице и задаваться в расширенных полях. В последнем случае, достаточно в контенте вставить шорткод карты без указания параметров.

Установка плагина и условия его работы

Перед установкой плагина необходимо проверить наличие, а при отсутствии установить и активировать плагин Advanced Custom Fields for WordPress Developers (ACF) т.к. «ACF:Yandex» является расширением данного плагина, то его наличие является обязательным. В противном случае работа acf-yandex будет неэффективной.

Для установки плагина «ACF:Yandex», в административной консоли, в разделе «Плагины» => «Добавить новый», найдите плагин «ACF:Yandex» и нажмите кнопку «Установить».

ссылка на репозиторий WP
ссылка на GITHub

Геопозиция на карте

Настройки плагина

Настройка плагина является обязательным действием после его установки. Для определения настроек, из главного консольного меню необходимо вызвать пункт «Настройки» => «ACF:Yandex».

На текущий момент настройки плагина сводятся к установке следующих параметров:

«JavaScript API и HTTP Геокодер» — в данное поле необходимо ввести Ваш ключ API, для возможности интеграции. Сам ключ можно получить здесь, следуя инструкциям. При выборе типа ключа отметьте «JavaScript API и HTTP Геокодер». Не забудьте прочитать условия использования бесплатной версии JavaScript API и HTTP Геокодер, а в случае необходимости приобрести платный лицензионный ключ.

«Zoom по умолчанию» — определяет увеличение фрагмента карты по умолчанию, здесь вводится целочисленное значение от 1 до 19, где 1 это масштаб всей карты, а 19 это отдельный дом на карте.

Добавление поля ввода

При добавлении нового поля («Группы полей» => «Добавить» => «Добавить поле»), выберите в графе «Тип поля» значение «Yandex карта», оно расположено в разделе «jQuery». Заполните остальные необходимые поля и нажмите кнопку «Опубликовать» («Обновить»).

Ввод данных

В зависимости от выбранного объекта, существования поля, откройте «Записи» или «Страницы» (если был выбран иной объект, то откройте его). В созданном поле введите значение геоданных. Данные вводятся единой текстовой строкой, в определенном формате: «широта, долгота». Пример: » 55.76, 37.64 «. Определить координаты можно здесь. Если использовать данный сервис, то поле «Координаты метки» должно копироваться целиком.

Публикация данных

После того, как Вы привязали геоточку к объекту, в контенте данного объекта можно воспользоваться шорт-кодом для публикации карты.

[yandexmap _field=field_value]

Вместо значение параметра _field (в примере значение определено как field_value), должно содержать заданное имя поля с типом «Yandex карта».

По умолчанию формируется точка с указанными координатами, в качестве подписи используется заголовок поста (страницы), если пост или страница содержит миниатюру и отрывок, то эти данные будут вставлены в описание при нажатии.

Данный шорткод имеет ряд дополнительных параметров:
style_width, style_height — ширина и высота блока карты
class — подключить стиль css к блоку карты
title — подпись для точки
memo — описание при нажатии
zoom — зум карты, значение от 1 до 19 (значение по умолчанию можно настроить в меню Настройки => ACF:Yandex => Zoom по умолчанию)
point — координаты точки (пример записи: «55.76, 37.64»)

Данные указанные в параметрах шорткода являются приоритетными.

Обязательными параметрами являются параметры _field или point, один из них должен быть задан в обязательном порядке.

Пример публикации карты:
[yandexmap field=метка_на_карте] — будет выведена карта, с указанием точки, заданной в переменной с именем «метка_на_карте» в текущем посте или странице.
[yandexmap field=метка_на_карте style_width=100% style_height=300px] — будет выведена карта, с указанием точки, заданной в переменной с именем «метка_на_карте» в текущем посте или странице , при этом блок карты будет растянут по всей ширине объекта публикации, а высота блока будет составлять 300 пикселей.
[yandexmap field=метка_на_карте zoom=9] — будет выведена карта, с указанием точки, заданной в переменной с именем «метка_на_карте» в текущем посте или странице, масштаб карты будет равен 9 (примерно город целиком).

Допускается использование шорткода без указания значения геоданых в объекте, при этом значение параметра point будет обязательным.