en ru | docs

Руководство администратора

Панель конфигурации

Независимо от движка форума или блога, хороший плагин MapBBCode добавлят куда-нибудь страницу конфигурации карты, обычно на отдельную страницу меню настройки, либо где-то рядом с параметрами bb-кода. Эта страница выглядит одинаково на разных движках, поскольку параметры одни и те же, а главная панель рисуется библиотекой MapBBCode. В панели есть список слоёв и карта для изменения размеров панелей и упорядочивания слоёв.

Слои

Слои выбираются из общего списка. По умолчанию в нём только те, что сделаны из данных OpenStreetMap, и иногда слой снимков Bing. Для большинства слоёв достаточно выбрать название и нажать кнопку «добавить», после чего поправить порядок с помощью стрелок вверх-вниз рядом с названием слоя на карте. Все карты на форуме будут показывать первый в списке слой по умолчанию, пользователи смогут выбрать другие слои, но только на время просмотра.

Некоторые слои, например, от Cloudmade, требуют ключа разработчика. Когда вы выберете такой слой, появится поле ввода и ссылка на сайте, где нужно зарегистрироваться для получения ключа. Если вы ошибётесь, вводя ключ, — не беда: удалите слой и добавьте его заново.

Для подключения проприетарных слоёв, от Google, Yandex или других, понадобится добавить соответствующие скрипты в один или несколько файлов. Инструкции в разделе «Расширения» ниже.

Меняя порядок слоёв, вы заметите, что проприетарный слой нельзя сделать слоем по умолчанию. Для этого вам потребуется хотя бы один слой на базе OpenStreetMap. Это ограничение присутствует, поскольку автор библиотеки MapBBCode не хочет использования плагинов в качестве бесплатных Google-карт. Он участвует в проекте OSM и хочет, чтобы он рос и был известен. Обойти ограничение несложно, но, пожалуйста, не надо. Если вы хотите использовать в форуме или блоге исключительно приприетарные карты, найдите плагин, который сделан специально для этого. Что же до слоёв OpenStreetMap, среди них немало красивых и информативных, например, OpenMapSurfer и Hike & Bike.

Интерактивная демонстрация

Default position and zoom:
View panel size:
Editor panel height:
Editor window size:

Размеры и режимы панелей

Панель карты может находиться в одном из трёх состояний: обычный просмотр, просмотр развёрнутый, редактирование. Редактор можно открыть в отдельном окне, либо во встроенной панели. Все эти режимы и размеры панелей можно настроить шестью кнопками: 4 со стрелками изменения размеров и 2 переключателя. «Карта/Редактор» выбирает состояние, которое вы настраиваете, а кнопка ниже переключает поведение состояния: в режиме «Карта» вы выбираете, будет ли панель небольшого размера с кнопкой распахивания, или сразу развёрнутая по умолчанию; в режиме «Редактор» — открывать его в окне или во встроенной панели.

Нажимая кнопки настройки, вы заметите, что числа под панелью меняются, и иногда меняют цвет. Если значение выведено бледно-серым, оно не используется: например, когда редактор появляется во встроенной панели, размеры окна редактора игнорируются.

Наконец, подвигайте и масштабируйте карту. Выбранные позиция и масштаб сохранятся, и будут использоваться для редактора и пустых bb-кодов карты. Владельцам местных форумов будет резонно установить позицию по умолчанию на их регион.

Другие настраиваемые параметры

Кроме панели карты и слоёв, есть ещё несколько параметров, которые обычно можно настроить:

Настройка MapBBCode

Многие плагины MapBBCode позволяют расширить функциональность библиотеки. Есть два типа расширений:

Расширения

Это отдельные файлы javascript, которые нужно включить в шаблон после mapbbcode*.js. Обычно для этого нужно изменить три файла, хотя это зависит от движка и плагина:

Некоторые из этих файлов могут быть автоматически изменены плагином, так что верным решением будет найти комментарии “put MapBBCode add-ons here”. Хорошие плагины отмечают ими места, куда нужно дописать строки для расширений. Обратите внимание на пути к файлам.

По умолчанию с библиотекой MapBBCode поставляются несколько расширений. Во-первых, модуль измерения длины, Handler.Length.js. Он находится в том же каталоге, что и mapbbcode.js, и добавляет на карты индикатор длины.

Во-вторых, проприетарные слои. Если вам нужны слои Google или Яндекса, добавьте следующую строку (заменив {PROVIDER} на название компании):

<script src="mapbbcode/proprietary/{PROVIDER}.js"></script>

Внимание: поскольку вы правите файлы вручную, вам придётся повторить эти правки после обновления плагина MapBBCode.

Параметры

Почти все параметры MapBBCode и Leaflet можно настроить вручную, если не устраивают значения по умолчанию. Особенно это полезно для плагинов, которые не предоставляют панели конфигурирования. Это несложно: найдите шаблон заголовка страниц (их может быть больше одного) поиском по строке new MapBBCode( (не опускайте открывающую скобку). Увидите множество параметров, которые можно переопределить или дополнить своими (список см. в справочнике по API). Для настройки Leaflet добавьте параметр leafletOptions: {}, и внутри фигурных скобок поместите параметры, которые будут переданы объекту L.Map.

Опять же, эти изменения, скорее всего, будут перезаписаны при обновлении плагина.

Помощь

Почитайте страницу ответов, если остались вопросы, и не стесняйтесь спрашивать автора, если не нашли нужного ответа.