katzz0 / yii2-yandex-maps
Yii 2 yandex map module
Installs: 933
Dependents: 0
Suggesters: 0
Security: 0
Stars: 4
Watchers: 2
Forks: 30
Open Issues: 1
Type:yii2-extension
Requires
- php: >=5.4.0
- yiisoft/yii2: 2.0.*
This package is not auto-updated.
Last update: 2025-04-22 06:48:01 UTC
README
This repo is the fork of the yii2-yandex-maps by Mirocow
Components
katzz0\yandexmaps\Api
katzz0\yandexmaps\Map
katzz0\yandexmaps\Canvas
katzz0\yandexmaps\JavaScript
katzz0\yandexmaps\Placemark
katzz0\yandexmaps\Polyline
- TODO: Geo XML
- TODO: GeoObject
- TODO: Balloon
- TODO: Hint
- TODO: Clusterer
katzz0\yandexmaps\Api
Application components which register scripts.
Usage
Attach component to application (e.g. edit config/main.php):
'components' => [ 'yandexMapsApi' => [ 'class' => 'mirocow\yandexmaps\Api', ] ],
katzz0\yandexmaps\Map
Map instance.
Usage
use katzz0\yandexmaps\Map; $map = new Map('yandex_map', [ 'center' => [55.7372, 37.6066], 'zoom' => 10, // Enable zoom with mouse scroll 'behaviors' => array('default', 'scrollZoom'), 'type' => "yandex#map", ], [ // Permit zoom only fro 9 to 11 'minZoom' => 9, 'maxZoom' => 11, 'controls' => [ "new ymaps.control.SmallZoomControl()", "new ymaps.control.TypeSelector(['yandex#map', 'yandex#satellite'])", ], ] );
katzz0\yandexmaps\Canvas
This is widget which render html tag for your map.
Usage
Simple add widget to view:
use katzz0\yandexmaps\Canvas as YandexMaps; <?= YandexMaps::widget([ 'htmlOptions' => [ 'style' => 'height: 600px;', ], 'map' => new Map('yandex_map', [ 'center' => [55.7372, 37.6066], 'zoom' => 17, 'controls' => [Map::CONTROL_ZOOM], 'behaviors' => [Map::BEHAVIOR_DRAG], 'type' => "yandex#map", ], [ 'objects' => [new Placemark(new Point(55.7372, 37.6066), [], [ 'draggable' => true, 'preset' => 'islands#dotIcon', 'iconColor' => '#2E9BB9', 'events' => [ 'dragend' => 'js:function (e) { console.log(e.get(\'target\').geometry.getCoordinates()); }' ] ])] ]) ]) ?>
You can use also direct place label:
<?= YandexMaps::widget([ 'htmlOptions' => [ 'style' => 'height: 600px;', ], 'map' => new Map(null, [ 'center' => 'London', 'zoom' => 17, 'controls' => [Map::CONTROL_ZOOM], 'behaviors' => [Map::BEHAVIOR_DRAG], 'type' => "yandex#map", ], [ 'objects' => [new Placemark(null, [], [ 'draggable' => true, 'preset' => 'islands#dotIcon', 'iconColor' => '#2E9BB9', 'events' => [ 'dragend' => 'js:function (e) { console.log(e.get(\'target\').geometry.getCoordinates()); }' ] ])] ]) ]) ?>