در دنیای امروزی که به مکانها اهمیت زیادی داده میشود، کاربران انتظار دسترسی آسان به اطلاعات مکانی، مسیرها و ناوبری را دارند. چه از طریق یک اپلیکیشن پیامرسان، یک اپلیکیشن کشف موقعیت مکانی، یک پلتفرم لجستیک و حملونقل، یک برنامهریز سفر یا یک پلتفرم فهرست املاک و مستغلات، کاربران اغلب نیاز دارند که به سرعت جزئیات مکان را مشاهده کنند یا بهترین مسیر را از نقطه الف تا ب پیدا کنند. در حالی که توسعهدهندگان میتوانند تجربه درونبرنامهای خود را بسازند، استفاده از رابط کاربری جامع و آشنای نقشههای گوگل، تجربهای برتر را فراهم میکند.
یک URL گوگل مپ با ساختار مناسب برای یک تجربه کاربری روان ضروری است. URL های نادرست این تجربه را به خطر می اندازند، کاربران را به مکان اشتباه هدایت می کنند، یک نمای کلی از نقشه را به جای جزئیات خاص نمایش می دهند، یا حتی منجر به یک لینک خراب می شوند. این امر کاربران را ناامید می کند و مانع از رسیدن آنها به هدفشان می شود. به عنوان مثال، حتی با یک URL معتبر نقشه، کاربری که انتظار جزئیات مربوط به یک کسب و کار خاص را دارد، ممکن است به جای آن به یک نمای کلی از نقشه بدون اطلاعات مرتبط برسد. به مثال زیر مراجعه کنید:
https://www.google.com/maps/search/?api=1&query=-33.8567%2C151.2152
این آدرس نقشه برای باز کردن نقشههای گوگل و نمایش یک مکان بر اساس طول و عرض جغرافیایی معتبر است. با این حال، جزئیاتی در مورد یک مکان خاص در اختیار کاربران قرار نمیدهد.

ارتباط یکپارچه برنامه شما با نقشههای گوگل از طریق URL های دقیق

پلتفرم نقشههای گوگل (GMP) دو روش اصلی برای ساخت URLهای دقیق ارائه میدهد: Places API(جدید)، که به یک کلید API نیاز دارد، و Maps URLs، که رایگان هستند و نیازی به کلید ندارند. راهحلهای زیر سناریوها و موارد استفاده مختلفی را پوشش میدهند:
استفاده از فیلد googleMapsUri یا googleMapsLinks در GMP Places API(جدید)
API مکانهای GMP (جدید) مجموعهای جامع از اطلاعات مربوط به یک مکان خاص را برمیگرداند. هنگام درخواست فیلد googleMapsUri یا googleMapsLinks (با مشخص کردن آن در field mask )، پاسخ API شامل یک شیء مکان است. این شیء حاوی URLهای از پیش قالببندی شده است که میتوانند برای باز کردن مستقیم نمای مربوطه، مانند نمای جزئیات مکان، در Google Maps استفاده شوند.
مثال:
درخواست جزئیات مکان
curl -X GET -H 'Content-Type: application/json' \ -H "X-Goog-Api-Key: YOUR_API_KEY" \ -H "X-Goog-FieldMask: googleMapsUri,googleMapsLinks" \ https://places.googleapis.com/v1/places/ChIJ3S-JXmauEmsRUcIaWtf4MzE
پاسخ جزئیات مکان:
{
"googleMapsUri": "https://maps.google.com/?cid=3545450935484072529",
"googleMapsLinks": {
"directionsUri": "https://www.google.com/maps/dir//''/data=!4m7!4m6!1m1!4e2!1m2!1m1!1s0x6b12ae665e892fdd:0x3133f8d75a1ac251!3e0",
"placeUri": "https://maps.google.com/?cid=3545450935484072529",
"writeAReviewUri": "https://www.google.com/maps/place//data=!4m3!3m2!1s0x6b12ae665e892fdd:0x3133f8d75a1ac251!12e1",
"reviewsUri": "https://www.google.com/maps/place//data=!4m4!3m3!1s0x6b12ae665e892fdd:0x3133f8d75a1ac251!9m1!1b1",
"photosUri": "https://www.google.com/maps/place//data=!4m3!3m2!1s0x6b12ae665e892fdd:0x3133f8d75a1ac251!10e5"
}
} ChIJ3S-JXmauEmsRUcIaWtf4MzE در مثال بالا، شناسه مکان (Place ID) خانه اپرای سیدنی در مثال بالا است. شناسه مکان یک شناسه متنی است که به طور منحصر به فرد یک مکان را در پایگاه داده Google Places و در نقشههای گوگل مشخص میکند.
بازیابی شناسههای مکان بدون هزینه
برای بازیابی شناسههای مکان از طریق برنامهنویسی، میتوانید از قابلیت Places API: Text Search(ID Only) استفاده کنید. این یک روش بدون هزینه برای به دست آوردن شناسههای مکان است. درباره Place ID و درخواست Place API(New) بیشتر بدانید.
درخواست جستجوی متن (فقط شناسه) در API مکانها:
curl -X POST -d '{"textQuery" : "Sydney Opera House"}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: places.id' \
'https://places.googleapis.com/v1/places:searchText'پاسخ جستجوی متن API مکانها (فقط شناسه):
{
"places": [
{
"id": "ChIJ3S-JXmauEmsRUcIaWtf4MzE"
}
]
}همچنین میتوان با کلیک یا لمس یک نقطه مورد علاقه روی نقشه، شناسههای مکان را بازیابی کرد. جزئیات بیشتر در مورد آیکونهای نقطه مورد علاقه قابل کلیک ( جاوااسکریپت ، اندروید ، iOS ) را بیابید.
پیادهسازی
هنگام استفاده از Places API، توسعهدهندگان میتوانند به سادگی فیلد googleMapsUri یا googleMapsLinks را از پاسخ استخراج کرده و از آن برای اجرای نمای مربوطه در برنامه Google Maps یا در مرورگر (در صورت عدم نصب برنامه) استفاده کنند.
| ویژگی | توضیحات |
|---|---|
| مسیرهاUri | پیوندی برای باز کردن نقشههای گوگل و نمایش مسیرها از مکان فعلی کاربر به این مکان |
| مکان | پیوند برای باز کردن نقشههای گوگل به صفحه جزئیات مکان برای این مکان |
| writeAReviewUri | لینک برای باز کردن نقشه گوگل به صفحه نوشتن نقد برای این مکان |
| نقد و بررسیها | پیوند برای باز کردن نقشههای گوگل به صفحه نظرات این مکان |
| عکسها یوری | پیوند برای باز کردن نقشههای گوگل به صفحه عکسهای این مکان |
راهنمای توسعهدهنده را بررسی کنید و همین امروز این ویژگی را امتحان کنید.
استفاده از آدرسهای اینترنتی نقشهها
با استفاده از Maps URLs، میتوانید یک URL جهانی و چند پلتفرمی برای راهاندازی Google Maps و انجام جستجوها، دریافت مسیرها و ناوبری و نمایش نماهای نقشه و تصاویر پانوراما ایجاد کنید. سینتکس URL صرف نظر از پلتفرم مورد استفاده یکسان است. برای استفاده از Maps URLs نیازی به کلید API گوگل ندارید.
اقدامات نقشه موجود عبارتند از:
تابع جستجو ، برنامه نقشههای گوگل یا اگر برنامه نصب نشده باشد، در یک مرورگر اجرا میشود که پینی را برای یک مکان خاص نمایش میدهد، یا یک جستجوی کلی انجام میدهد و نقشهای را برای نمایش نتایج اجرا میکند.
قابلیت «مسیریابی» (Directions) یک برنامهی نقشههای گوگل یا در صورت عدم نصب برنامه، در یک مرورگر اجرا میکند که مسیرها را بین نقاط نمایش میدهد یا ناوبری گام به گام را در نقشههای گوگل برای دستگاههای تلفن همراه فعال میکند.
قابلیت پانورامای نمای خیابان به شما امکان میدهد یک نمایشگر راهاندازی کنید تا تصاویر نمای خیابان را به صورت پانوراماهای تعاملی نمایش دهد.
برای بررسی عملکردها و مثالهای بیشتر، به مستندات توسعهدهندهی GMP Maps URLs مراجعه کنید.
در اینجا به دو ویژگی کلیدی URL های نقشه ها می پردازیم:
نمایش جزئیات مکان در نقشههای گوگل: این بخش نحوه ساخت URLهایی را توضیح میدهد که جزئیات یک مکان خاص را در نقشههای گوگل نمایش میدهند. همچنین نحوه کار با مکانهایی که نامهای منحصر به فردی ندارند را با استفاده از شناسههای مکان و پرسوجوهای دقیق شرح میدهد.
ارائه مسیر با استفاده از URLهای نقشهها: این بخش نحوه ایجاد URLهایی را توضیح میدهد که مسیرها را بین مکانها ارائه میدهند، از جمله مسیرهایی با چندین نقطه مسیر و پیمایش گام به گام.
نمایش جزئیات مکان در نقشه گوگل
تابع Search برای تکمیل جستجوی مکانها دو پارامتر میگیرد که query (الزامی) و query_place_id (اختیاری) هستند.
پارامتر query برای همه درخواستهای جستجو الزامی است. این پارامتر نام مکان، یا مختصات عرض/طول جغرافیایی جدا شده با کاما، یا یک عبارت جستجوی عمومی را میپذیرد.
ساختار URL جستجو:
https://www.google.com/maps/search/?api=1¶meters
سناریو ۱: نمایش جزئیات مکان برای یک نام مکان منحصر به فرد
https://www.google.com/maps/search/?api=1&query=Sydney%20Opera%20House

حالا، مکانی با نامی غیرمنحصر به فرد را در نظر بگیرید. چه اتفاقی میافتد اگر فقط با این نام غیرمنحصر به فرد جستجو کنید؟ به سناریوی بعدی مراجعه کنید.
سناریو ۲: جستجوی مکانها برای یک نام مکان غیرمنحصر به فرد
https://www.google.com/maps/search/?api=1&query=7-Eleven
از آنجایی که نام مکان منحصر به فرد نیست، این URL فهرستی از مکانهای نزدیک به فروشگاه 7-Eleven را در نمای دید باز میکند. سپس کاربران میتوانند یک فروشگاه خاص را برای مشاهده جزئیات آن انتخاب کنند.

برای جلوگیری از نمایش لیست مکانها و دسترسی مستقیم به یک صفحه جزئیات خاص، میتوانید از یک روش دقیقتر استفاده کنید. به مثال بعدی مراجعه کنید.
سناریو ۳: نمایش جزئیات مکان برای یک نام مکان غیرمنحصر به فرد
هنگام کار با نامهای رایج مکانها، یک جستجوی ساده نام اغلب فهرستی از مکانها را برمیگرداند. برای پیوند مستقیم به یک صفحه جزئیات خاص، میتوانید از یکی از روشهای زیر استفاده کنید:
روش ۱: استفاده از یک پرسوجوی دقیق با نام مکان و آدرس
https://www.google.com/maps/search/?api=1&query=7-Eleven%2C37%20Swanston%20St%2C%20Melbourne%20Australia
در این URL، پارامتر query به صورت نام مکان و آدرس قالببندی شده است. این به محدود کردن جستجو و لینک مستقیم به مکان مورد نظر کمک میکند.
روش ۲: استفاده از شناسه مکان
شناسههای مکان، یک مکان را به طور منحصر به فرد در پایگاه داده Google Places و در Google Maps مشخص میکنند.
https://www.google.com/maps/search/?api=1&query=7-Elevan&query_place_id=ChIJGcmcg7ZC1moRAOacd3HoEwM
در اینجا، ChIJGcmcg7ZC1moRAOacd3HoEwM شناسه مکان منحصر به فرد برای مکان خاص است. پارامتر query هنوز مورد نیاز است اما فقط در صورتی استفاده میشود که نقشههای گوگل نتواند شناسه مکان را پیدا کند.
سناریو ۴: نمایش جزئیات مکان با استفاده از مختصات طول و عرض جغرافیایی و همچنین شناسه مکان
استفاده از شناسه مکان تضمین میکند که نقشههای گوگل اطلاعات دقیق مکان را نشان میدهند.
https://www.google.com/maps/search/?api=1&query=-33.8567%2C151.2152&query_place_id=ChIJ3S-JXmauEmsRUcIaWtf4MzE

بازیابی شناسههای مکان بدون هزینه
برای بازیابی شناسههای مکان از طریق برنامهنویسی، میتوانید از قابلیت Places API: Text Search(ID Only) استفاده کنید. این یک روش بدون هزینه برای دریافت شناسههای مکان است. درباره Place ID و درخواست Place API(New) بیشتر بدانید.
درخواست جستجوی متن (فقط شناسه) در API مکانها:
curl -X POST -d '{"textQuery" : "Sydney Opera House"}'
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY'
-H 'X-Goog-FieldMask: places.id'
'https://places.googleapis.com/v1/places:searchText'پاسخ جستجوی متن API مکانها (فقط شناسه):
{
"places": [
{
"id": "ChIJ3S-JXmauEmsRUcIaWtf4MzE"
}
]
}همچنین میتوان با کلیک یا لمس یک نقطه مورد علاقه روی نقشه، شناسههای مکان را بازیابی کرد. جزئیات بیشتر در مورد آیکونهای نقطه مورد علاقه قابل کلیک ( جاوااسکریپت ، اندروید ، iOS ) را بیابید.
نتیجهگیری
ارائه جزئیات دقیق مکان برای یک تجربه مثبت بسیار مهم است. برای اطمینان از اینکه کاربران به صفحه جزئیات مکان صحیح هدایت میشوند، URL های جستجو را با استفاده از یکی از قالبهای پیشنهادی زیر بسازید:
-
query=PLACE_NAME, ADDRESS -
query=PLACE_NAME&query_place_id=PLACE_ID
وقتی هدف شما نمایش جزئیات یک مکان خاص است، از استفاده فقط مختصات عرض/طول جغرافیایی در پارامتر query خودداری کنید. قالبهایی مانند query=latitude,longitude ، query=PLACE_NAME,latitude,longitude یا query=ADDRESS,latitude,longitude به طور مداوم به صفحه جزئیات مکان مورد نظر منتهی نمیشوند. در عوض، طول و عرض جغرافیایی مکان را نشان میدهند.
جستجوی دستهبندیشده با استفاده از آدرسهای اینترنتی نقشهها
در یک جستجوی دستهبندیشده، شما یک عبارت جستجوی عمومی را وارد میکنید و گوگل مپس تلاش میکند فهرستهایی را پیدا کند که با معیارهای شما در نزدیکی مکانی که مشخص کردهاید مطابقت دارند. اگر هیچ مکانی مشخص نشده باشد، گوگل مپس تلاش میکند فهرستهایی را در نزدیکی مکان فعلی شما پیدا کند.
سناریو ۱: جستجوی مکانهای نزدیک
https://www.google.com/maps/search/?api=1&query=Cafe%20near%20Sydney%20Opera%20House%20that%20are%20open%20now

ارائه مسیر با استفاده از آدرسهای نقشه
تابع «مسیرها» مسیر بین دو یا چند نقطه مشخص شده روی نقشه، و همچنین مسافت و زمان سفر را نمایش میدهد. این تابع به توسعهدهندگان کنترل بیشتری بر مسیرهای ارائه شده میدهد. مستندات «مسیرهای آدرسهای نقشه» GMP دستورالعملهای دقیقی در مورد ساخت URL برای مسیرهای سفارشی ارائه میدهد.
ساختار آدرس URL مسیرها:
https://www.google.com/maps/dir/?api=1¶meters
سناریو ۱: یافتن بهترین مسیر از موقعیت فعلی کاربر به مقصد
https://www.google.com/maps/dir/?api=1&destination=Flinders%20Station%20Melbourne&travelmode=driving
این URL نقشههای گوگل را باز میکند و مسیرهای رانندگی را از موقعیت فعلی کاربر نمایش میدهد.
در این URL، origin حذف شده است. وقتی origin حذف شود، مسیر به طور پیشفرض به مرتبطترین مکان شروع، مانند مکان دستگاه، در صورت وجود، تبدیل میشود. اگر هیچ کدام وجود نداشته باشند، نقشه حاصل فرمی را ارائه میدهد که به کاربر اجازه میدهد مبدا را وارد کند. مقدار مبدا و مقصد میتواند نام مکان، آدرس یا مختصات عرض/طول جغرافیایی جدا شده با کاما باشد.
travelmode یک پارامتر اختیاری است. این پارامتر روش سفر را تعریف میکند. این پارامتر را میتوان به صورت زیر تنظیم کرد:
- رانندگی
- پیادهروی
- دوچرخهسواری
- دو چرخه
- ترانزیت
اگر هیچ حالت سفری مشخص نشده باشد، نقشه گوگل یک یا چند مورد از مرتبطترین حالتها را برای مسیر مشخص شده و/یا تنظیمات برگزیده کاربر نشان میدهد.
توسعهدهندگان همچنین میتوانند با استفاده از پارامترهای origin_place_id و destination_place_id شناسههای مکان (Place ID) را مشخص کنند. استفاده از شناسه مکان بهترین تضمین برای لینک دادن به مکان درست است.
بازیابی شناسههای مکان بدون هزینه
برای بازیابی شناسههای مکان از طریق برنامهنویسی، میتوانید از قابلیت Places API: Text Search(ID Only) استفاده کنید. این یک روش بدون هزینه برای دریافت شناسههای مکان است. درباره Place ID و درخواست Place API(New) بیشتر بدانید.
درخواست جستجوی متن (فقط شناسه) در API مکانها:
curl -X POST -d '{"textQuery" : "Sydney Opera House"}'
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY'
-H 'X-Goog-FieldMask: places.id'
'https://places.googleapis.com/v1/places:searchText'پاسخ جستجوی متن API مکانها (فقط شناسه):
{
"places": [
{
"id": "ChIJ3S-JXmauEmsRUcIaWtf4MzE"
}
]
}همچنین میتوان با کلیک یا لمس یک نقطه مورد علاقه روی نقشه، شناسههای مکان را بازیابی کرد. جزئیات بیشتر در مورد آیکونهای نقطه مورد علاقه قابل کلیک ( جاوااسکریپت ، اندروید ، iOS ) را بیابید.

سناریو ۳: ارائه ناوبری گام به گام
https://www.google.com/maps/dir/?api=1&destination=Flinders%20Station%20Melbourne&travelmode=driving&dir_action=navigate
تنظیم dir_action=navigate در URL، در صورتی که موقعیت مکانی فعلی کاربر (موقعیت مکانی دستگاه) در دسترس باشد و به عنوان مبدا استفاده شود (چه به صورت صریح ارائه شده باشد و چه به صورت ضمنی در صورت حذف پارامتر مبدا استفاده شود)، نقشههای گوگل را در حالت ناوبری گام به گام اجرا میکند. در غیر این صورت، پیشنمایشی از مسیر نمایش داده خواهد شد.
ناوبری گام به گام زمانی راهاندازی میشود که dir_action=navigate تنظیم شده باشد و:
- مبدا مشخص شده و به مکان فعلی کاربر نزدیک است
- مبدا حذف شده و مکان فعلی کاربر در دسترس است.
پیشنمایش مسیر زمانی اجرا میشود که:
-
dir_action=navigateتنظیم نشده است -
dir_action=navigateتنظیم شده و مبدا مشخص شده است، و مبدا به مکان فعلی کاربر نزدیک نیست -
dir_action=navigateتنظیم شده و مبدا حذف شده است و مکان فعلی کاربر در دسترس نیست.
توجه داشته باشید که پیمایش در همه محصولات نقشههای گوگل مانند نقشههای گوگل وب و/یا بین همه مقصدها در دسترس نیست. در این موارد، این پارامتر نادیده گرفته میشود.
![]() | ![]() |
نتیجهگیری
با ساخت صحیح URL های نقشه، میتوانید اطمینان حاصل کنید که کاربران اطلاعات صحیح مورد نیاز خود را به سرعت و به طور موثر دریافت میکنند.
همیشه مقصد را مشخص کنید و در صورت امکان برای تضمین دقت، از شناسه مکان استفاده کنید
وقتی هدف، ارائه ناوبری فوری است، پارامتر dir_action=navigate را برای فعال کردن ناوبری مرحله به مرحله وارد کنید. اگر مکان دستگاه در دسترس باشد و به عنوان مبدا استفاده شود (چه به صراحت تنظیم شده باشد و چه حذف شده باشد) ناوبری از مکان فعلی کاربر شروع میشود.
انتخاب رویکرد مناسب برای درخواست شما
شما دو گزینه اصلی دارید: استفاده از URL های از پیش قالب بندی شده ارائه شده توسط Places API یا ساخت دستی URL های Maps در برنامه خود. هر رویکرد مزایا و معایب خاص خود را دارد.
API مکانها:
فیلدهای
googleMapsUriوgoogleMapsLinksدر پاسخ Place Details، URLهای آماده برای استفاده را ارائه میدهند. این امر زمان توسعه را کاهش میدهد و خطر خطا در قالببندی URL را به حداقل میرساند.کنترل کمتری بر پیکربندی مسیرها ارائه میدهد. در حالی که
googleMapsLinksمسیرهای اولیه را ارائه میدهد، از نقاط مسیر یا سفارشیسازی پیشرفته پشتیبانی نمیکند. همچنین، فعال کردن ناوبری گام به گام به طور مستقیم نسبتاً دشوارتر است.
آدرسهای اینترنتی نقشهها:
انعطافپذیری و کنترل بیشتری ارائه میدهد. توسعهدهندگان میتوانند URLهایی را برای نمایش جزئیات مکان و پیکربندی جنبههای مختلف مسیرها، از جمله اضافه کردن نقاط مسیر، مشخص کردن حالتهای سفر و شروع ناوبری گام به گام، ایجاد کنند.
نیاز به درک عمیقتری از پارامترها و ساختار URL دارد. ساخت دستی اگر با دقت انجام نشود، احتمال خطا را افزایش میدهد.
بهبود آدرسهای اینترنتی نقشهها با پارامترهای UTM
برای کمک به گوگل در درک بهتر نحوه ادغام URLهای Maps توسط توسعهدهندگان و اطمینان از عملکرد بهینه، شما را تشویق میکنیم که پارامترهای ردیابی UTM را در ساختار URL خود لحاظ کنید. با افزودن پارامترهای utm_source و utm_campaign ، دادههای ارزشمندی ارائه میدهید که به ما امکان میدهد الگوهای استفاده را تجزیه و تحلیل کرده و محصول Maps URLs را بهبود بخشیم.
برای پارامتر utm_source ، از نام برنامه خود استفاده کنید. پارامتر utm_campaign باید منعکس کننده اقدام مورد نظر کاربر باشد، مانند "location_sharing"، "place_details_search" یا "directions_request".
برای مثال، یک URL با پارامترهای UTM ممکن است به این شکل باشد:
https://www.google.com/maps/search/?api=1&query=Sydney+Opera+House&query_place_id=ChIJ3S-JXmauEmsRUcIaWtf4MzE&utm_source=YourAppName&utm_campaign=place_details_search
استفاده مداوم از این پارامترها به ما کمک میکند تا حوزههای نیازمند بهبود را شناسایی کنیم، مشکلات را به طور مؤثرتری عیبیابی کنیم و در نهایت تجربه بهتری را برای همه کاربران ارائه دهیم.
مراحل بعدی
مطالعه بیشتر پیشنهادی:
مشارکتکنندگان
نویسندگان اصلی:
ترزا کین | مهندس راهکارهای پلتفرم نقشههای گوگل

