Сегодня я хочу рассказать как в этом самом сообщение передать фотографии и HTML теги.
По сути на план такой:
Если вы хотите понять как отправить любое сообщение с сайта в чат/группу Telegram, то можете прочитать гайд по ссылке.
1 задача – Научится добавлять HTML тэги
Если мы возьмём за основу то, что мы понимаем как отправлять простое сообщение, то для отправки html тэгов нам нужно будет лишь добавить в наш url ещё один параметр – parse_mode=html. Выглядеть это будет следующим образом:
https://api.telegram.org/botТОКЕН/sendMessage?chat_id=ID_ЧАТА&text=СООБЩЕНИЕ&parse_mode=html
По итогу мы сможем смело использовать некоторые HTML тэги, например:
- Для выделения жирным – <strong>, <b>
- Для наклонного шрифта – <i>, <em>
- Для подчёркивания – <u>, <ins>
- Ссылку – <a>
- Зачёркивание – <s>, <strike>, <del>
- и некоторые другие
Полный список сможете посмотреть по ссылке.
Не так много как хотелось бы, но, в целом, есть с чем работать)
Ещё один важный момент, который хотел отметить – перенос строки. Так как тэг <br> не поддерживается, то пришлось искать выход из этой ситуации. В итоге хорошо подходит выражение PHP_EOL.
$order_detail = '<b>Заказ №' . $order_id . '</b>' . PHP_EOL . PHP_EOL; $order_detail .= '<b>Состав заказа:</b>' . PHP_EOL; $order_detail .= $ordered_items . PHP_EOL; $order_detail .= 'Время оплаты: ' . $order_date_created . PHP_EOL . PHP_EOL; //...
В итоге в Telegram сообщение будет иметь следующий вид:

2 задача – Научиться добавлять изображения
В принципе, это тоже не сложно и описано в официальной документации. Более того, в документации можно найти много различных методов, которые позволяют отправлять видео, геолокацию, аудио и тд. Но нас сейчас интересует сам подход, а как заменить одно на другое вы разберётесь сами.
Суть в том, что нам нужно заменить url на другой. Вместо страницы sendMessage мы обращаемся на страницу sendPhoto, а также теперь меняются параметры и минимально нужный нам это ссылка на само изображение, которое передаётся в параметр photo.
//ссылка для отправки текста https://api.telegram.org/botТОКЕН/sendMessage?chat_id=ID_ЧАТА&text=СООБЩЕНИЕ&parse_mode=html //ссылка для отправки изображения https://api.telegram.org/botТОКЕН/sendPhoto?chat_id=ID_ЧАТА&photo=URL_ИЗОБРАЖЕНИЯ //Пример: $botToken = '5177503253:AAGDZHnGChuhrxifE-4c7fRb62nlQ_QmyhE'; $chat_id = '-1001565978363'; $image_url = 'https%3A%2F%2Fstatic.onecms.io%2Fwp-content%2Fuploads%2Fsites%2F6%2F2019%2F05%2Fmsdghos_ec065-2000.jpg'; $url = 'https://api.telegram.org/bot' . $botToken . '/sendPhoto?chat_id=' . $chat_id . '&photo=' . $image_url; $result = file_get_contents( $url );
Итогом будет отправка изображения в чат или группу в телеграмме:
