Mohsen
Mohsen
خواندن ۲ دقیقه·۷ سال پیش

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

برای قالب‌بندی (Formating) و جذاب کردن نوشته ها و متون در رباتهای تلگرامی مثلا ارسال متن به شکل توپرُ یا بولد (BOLD)، متن کج یا ایتالیک (italic) و یا درج لینک بین نوشته ها (Inline Url) به شکل زیر باید عمل بکنیم.

در بین پارامترهای متدهای sendMessage و sendPhoto موردی با عنوان parse_mode وجود داره که با اضافه کردنش به موارد ارسالی در آرایه $content میشه نوشته هامون رو فرمت‌دهی کنیم.

مثلا برای نوشتن یک متن توپر و ارسال به کاربر توی ربات و یا توی یک کانال از طریق ربات، باید به شکل زیر عمل بکنیم:

$content = ['text' => '<b>this is a bold text</b>', 'parse_mode' => 'HTML','chat_id' => $chat_id];
$telegram->sendMessage($content);

پارامتر parse_mode خودش دو نوع رو میپذیره، HTML و Markdown.

اگر از نوع HTML استفاده کنید برای ارسال متنهای قالب‌بندی شده باید متنتون رو توی تگهایی که تلگرام اجازه داده قرار بدید و مثل کد بالا اون رو ارسال کنید. برای ارسال متن توپر به شیوه Markdown هم باید به این شکل کدتون رو بنویسید.

$content = ['text' => '*this is a bold text*', 'parse_mode' => 'Markdown','chat_id' => $chat_id];
$telegram->sendMessage($content);

توی parse_mode مقدار Markdown قرار داده شده و به جای تگهای b از علامت * در ابتدا و انتهای متن استفاده شد.

برای ارسال لینک، به شکل زیر میتونیم این کار رو انجام بدیم:

$content = ['text' => '<a href="http://www.virgool.io/@mohsen322">this is an inline URL. Click On ME!</a>', 'parse_mode' => 'HTML','chat_id' => $chat_id];
$telegram->sendMessage($content);

از تگ a دقیقا مثل حالتی که توی صفحات اچ تی ام ال استفاده میکنیم اینجا هم به کار میبریم.

کدها و نمونه های بیشتر رو میذارم روی کانال.

نکته:

برای sendPhoto مثل اینکه تا این لحظه که من این آموزش رو مینویسم باگ وجود داره و زیر عکسها متنها فرمت بندی نمیشن، یعنی نمیشه لینک اضاف کرد و یا نوشته رو به شکل bold نوشت زیر عکس.
2- برای نوشتن علامت < طبق توضیحات خود داکیومنت باید از معادل &lt; بجای علامت > از معادل &gt; و بجای علامت & از معادل &quot; باید استفاده بکنید.

راهنمای ارسال نوشته ها به شیوه Markdown

*bold text* _italic text_ [inline URL](http://www.example.com/) [inline mention of a user](tg://user?id=123456789) `inline fixed-width code` ```block_language pre-formatted fixed-width code block ```

راهنمای ارسال نوشته ها به شیوه HTML

<b>bold</b>, <strong>bold</strong> <i>italic</i>, <em>italic</em> <a href="http://www.example.com/">inline URL</a> <a href="tg://user?id=123456789">inline mention of a user</a> <code>inline fixed-width code</code> <pre>pre-formatted fixed-width code block</pre>
قالب بندی متنربات تلگرامآموزش ربات نویسیtelegram api
یه برنامه نویس وب که شدید علاقه داره به یادگیری بیشتر توی زمینه کاریش و مسائل مرتبط با آی.تی و تکنولوژی :))
شاید از این پست‌ها خوشتان بیاید