Произвольные ссылки в url button: различия между версиями
Новая страница: «{{metadesc| Нюансы создания навыков для разработчиков }} __NOEDITSECTION__ == Задача == Далеко не все с…» |
Нет описания правки |
||
| (не показаны 4 промежуточные версии этого же участника) | |||
| Строка 1: | Строка 1: | ||
{{metadesc| Нюансы создания навыков для разработчиков }} | {{metadesc| Нюансы создания навыков для разработчиков }} | ||
__NOEDITSECTION__ | __NOEDITSECTION__ | ||
__TOC__ | |||
| Строка 8: | Строка 9: | ||
Далеко не все ссылки можно повесить на кнопки в навыках - например, такие ссылки, как <span class="tocopy">yandexnavi://build_route_on_map?</span>. | Далеко не все ссылки можно повесить на кнопки в навыках - например, такие ссылки, как <span class="tocopy">yandexnavi://build_route_on_map?</span>. | ||
Как быть? | При попытке разместить подобную ссылку напрямую в кнопке сгенерируется ошибка. Как быть? | ||
| Строка 15: | Строка 16: | ||
Поможет маленький лайфхак в три шага: | Поможет маленький лайфхак в три шага: | ||
# | # В навыке на кнопку размещаем ссылку на нужный https url (со всеми нужными параметрами); | ||
# | # По этому url расположим простейший скрипт с редиректом; | ||
# | # При нажатии на кнопку произойдёт нужный нам '''редирект в навигатор'''. | ||
Пример: | |||
header('Location: yandexnavi://build_route_on_map?lat_to=' . $_GET['lat_to'] . '&lon_to=' . $_GET['lon_to']); | header('Location: yandexnavi://build_route_on_map?lat_to=' . $_GET['lat_to'] . '&lon_to=' . $_GET['lon_to']); | ||
| Строка 24: | Строка 27: | ||
Готово! | Готово! | ||
[[Category: | |||
Таким же способом можно реализовать '''кликабельные номера телефонов''': | |||
* Выводим в навыке номер телефона (пусть будет 81234567890) | |||
* При клике производится запрос на сервер (например, такой: https://myskill.ru/callto/81234567890) | |||
* сервер возвращает редирект tel:81234567890 | |||
[[Category:FAQ(ЧАВО)]] | |||
[[Category:Диалоги]] | |||
Текущая версия от 08:34, 23 ноября 2020
Задача
Далеко не все ссылки можно повесить на кнопки в навыках - например, такие ссылки, как yandexnavi://build_route_on_map?.
При попытке разместить подобную ссылку напрямую в кнопке сгенерируется ошибка. Как быть?
Решение
Поможет маленький лайфхак в три шага:
- В навыке на кнопку размещаем ссылку на нужный https url (со всеми нужными параметрами);
- По этому url расположим простейший скрипт с редиректом;
- При нажатии на кнопку произойдёт нужный нам редирект в навигатор.
Пример:
header('Location: yandexnavi://build_route_on_map?lat_to=' . $_GET['lat_to'] . '&lon_to=' . $_GET['lon_to']);
Готово!
Таким же способом можно реализовать кликабельные номера телефонов:
- Выводим в навыке номер телефона (пусть будет 81234567890)
- При клике производится запрос на сервер (например, такой: https://myskill.ru/callto/81234567890)
- сервер возвращает редирект tel:81234567890