Install
This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/avto12/multi-map-acf/archive/refs/heads/main.zipWordPress plugin ACF Options Page-იდან location-ების წამოსაღებად და ერთ styled Google Map-ზე გამოსაჩენად.
გამოყენება:
[linden_multi_map]
რას აკეთებს
- კითხულობს ACF Options Page repeater-ს სახელით
maps. - თითოეულ row-ში იღებს Google Map field-ს სახელით
map. - ყველა location-ს აჩვენებს ერთ რუკაზე.
- ახლოს მყოფ pin-ებს შორ zoom-ზე ავტომატურად აჯგუფებს count bubble-ად.
- Cluster bubble-ზე დაჭერისას რუკა იმ ჯგუფზე zoom-in-ს აკეთებს.
- Pin-ზე დაჭერისას ხსნის popup card-ს.
- Popup-ში აჩვენებს image-ს, title-ს, description-ს და link-ს.
ACF Location Fields
Options Page-ზე უნდა გქონდეს repeater:
maps
Repeater-ის შიგნით:
map Google Map
pin_image Image
pin_icon Image URL, optional row-level override
pin_title Text
pin_description WYSIWYG Editor
pin_link URL
აუცილებელი ველია map. დანარჩენი ველები popup-ისთვის გამოიყენება.
ACF Map Setting Fields
Map-ის პარამეტრები მოდის ACF Options Page field-ებიდან:
map_height Text
map_zoom Number
fit_bounds True / False
pin_color Color Picker
pin_size Number
pin_icon Image URL
შენი current default მნიშვნელობები:
map_height 87vh
map_zoom 11
fit_bounds Default Value
pin_color #15421f
pin_size 25
pin_icon empty
Shortcode-ში ამ პარამეტრების მიწერა აღარ არის საჭირო.
Shortcode
ძირითადი shortcode:
[linden_multi_map]
ეს shortcode ავტომატურად იყენებს ACF Options Page-ში შევსებულ settings-ს:
map_height
map_zoom
fit_bounds
pin_color
pin_size
pin_icon
თუ ACF-ში რომელიმე setting ცარიელია, plugin fallback-ად გამოიყენებს:
map_height 87vh
map_zoom 11
fit_bounds true
pin_color #15421f
pin_size 25
pin_icon empty
Optional Shortcode Parameters
ჩვეულებრივ არ გჭირდება. ესენი დატოვებულია compatibility-სთვის:
[linden_multi_map option_name="maps" field_name="map"]
API key პირდაპირ shortcode-შიც შეიძლება, თუმცა ჯობს Settings გვერდზე იყოს შენახული:
[linden_multi_map api_key="YOUR_GOOGLE_MAPS_API_KEY"]
Cluster-ის გამორთვა, თუ ოდესმე დაგჭირდა:
[linden_multi_map cluster="false"]
Google Maps API Key
WordPress admin-ში შედი:
Settings -> Linden Multi Map
ჩასვი Google Maps API Key და შეინახე.
Google Cloud Console-ში ჩართული უნდა იყოს:
Maps JavaScript API
Places API
Geocoding API
Website restrictions-ში სასურველია:
http://lindenevents.local/*
https://lindenevents.local/*
http://*.local/*
https://*.local/*
https://lindenevents.com/*
https://www.lindenevents.com/*
Project-ზე Billing უნდა იყოს ჩართული.
Popup
Pin-ზე დაჭერისას popup-ში გამოჩნდება:
pin_imageროგორც background imagepin_iconროგორც custom marker iconpin_titleროგორც სათაურიpin_descriptionროგორც აღწერაpin_linkროგორც clickable popup link
თუ pin_link ცარიელია, popup უბრალოდ გაიხსნება და ლინკზე არ გადავა.
Popup-ის style წერია:
assets/css/linden-multi-map.css
Popup HTML იქმნება:
assets/js/linden-multi-map.js
ფუნქცია:
popupContent(location)
Pin Color
Pin ფერი მოდის ACF field-იდან:
pin_color
მაგალითად:
#15421f
თუ ACF Map Setting-ში pin_icon შევსებულია, ყველა pin-ზე იმ image URL-ს გამოიყენებს. თუ კონკრეტულ maps row-შიც გაქვს pin_icon, ის მხოლოდ იმ row-ის pin-ს გადაფარავს. თუ pin_icon ყველგან ცარიელია, default SVG pin გამოჩნდება.
Pin Size
Pin ზომა მოდის ACF field-იდან:
pin_size
მაგალითად:
25
Map Height
Map სიმაღლე მოდის ACF field-იდან:
map_height
მაგალითად:
87vh
650px
100vh
Map Zoom
Zoom მოდის ACF field-იდან:
map_zoom
მაგალითად:
11
თუ fit_bounds ჩართულია და რამდენიმე pin გაქვს, Google Map ყველა pin-ის გამოსაჩენად zoom-ს თვითონ აირჩევს. თუ გინდა map_zoom ზუსტად გამოიყენოს, ACF-ში fit_bounds გამორთე.
Fit Bounds
fit_bounds ნიშნავს, რომ რუკამ ავტომატურად დააყენოს view ისე, რომ ყველა pin გამოჩნდეს.
true ყველა pin გამოჩნდეს ავტომატურად
false გამოიყენოს map_zoom
Cluster
Cluster default-ად ჩართულია.
თუ pin-ები ერთმანეთთან ახლოსაა და map შორ zoom-ზეა, ისინი count bubble-ად გამოჩნდება.
Bubble-ზე დაჭერისას რუკა zoom-in-ს გააკეთებს, რომ pin-ები ცალ-ცალკე გამოჩნდეს.
Troubleshooting
თუ ჩანს:
This page can't load Google Maps correctly
შეამოწმე:
- API key სწორად არის ჩასმული Settings -> Linden Multi Map-ში.
- Google Cloud project-ზე Billing ჩართულია.
- ჩართულია Maps JavaScript API, Places API და Geocoding API.
- Website restrictions-ში domain სწორად წერია და ბოლოში აქვს
/*. - Local-ზე
httpდაhttpsორივე დამატებულია.
თუ ცვლილებები არ გამოჩნდა:
Ctrl + F5
ან გაწმინდე browser/cache plugin cache.
Plugin Files
linden-multi-map.php
assets/js/linden-multi-map.js
assets/css/linden-multi-map.css
README.md