مستندات افزونه ورود و خروج نیکان
آموزش راهاندازی ورود و ثبتنام پیامکی، استفاده از فرم و دکمه، تنظیم OTP، اتصال پنلهای پیامکی و ارسال کد در پیامرسان بله.
اطلاعات اولیه نصب فعلی
https://m-mansouri.ir/sms-login/[mm_sms_login_form][mm_sms_login_button]برنامهنویس: مهندس مهرداد منصوری — m-mansouri.ir
شروع سریع؛ از کجا شروع کنیم؟
برای راهاندازی سریع، ابتدا افزونه را فعال کنید، یک پنل پیامکی را تنظیم کنید، ارسال تست بگیرید و سپس فرم یا دکمه را در سایت قرار دهید.
نصب و فعالسازی افزونه
نصب از پیشخوان
به مسیر افزونهها ← افزودن ← بارگذاری افزونه بروید، فایل افزونه را انتخاب و نصب کنید، سپس افزونه را فعال کنید.
بررسی صفحه ورود
بعد از فعالسازی، افزونه صفحه ورود پیامکی را میسازد. اگر صفحه ساخته نشد، یک برگه بسازید و شورتکد فرم را داخل آن قرار دهید.
صفحه ورود، فرم و دکمه ورود/خروج
در ابتدای کار، این سه مورد بیشترین استفاده را دارند:
| مورد | مقدار | کاربرد |
|---|---|---|
| صفحه ورود | https://m-mansouri.ir/sms-login/ | آدرس صفحهای که فرم ورود پیامکی در آن قرار دارد. |
| فرم ورود | [mm_sms_login_form] | نمایش فرم دریافت شماره موبایل، ارسال OTP و ورود کاربر. |
| دکمه ورود/خروج | [mm_sms_login_button] | اگر کاربر مهمان باشد دکمه ورود و اگر وارد شده باشد دکمه خروج نمایش میدهد. |
قرار دادن فرم در برگه
[mm_sms_login_form]
قرار دادن دکمه در هدر یا المنتور
[mm_sms_login_button]
تنظیمات ورود
این بخش رفتار ورود، خروج و لینکهای پیشفرض وردپرس/ووکامرس را کنترل میکند.
| گزینه | پیشنهاد تنظیم | توضیح |
|---|---|---|
| تغییر مسیر صفحه ورود وردپرس | فعال برای سایت فروشگاهی | کاربران به جای wp-login یا wp-admin به صفحه ورود افزونه هدایت میشوند. |
| تغییر قالب ورود و ثبتنام ووکامرس | فعال در سایتهای ووکامرسی | فرم ورود/ثبتنام ووکامرس با سیستم ورود نیکان هماهنگ میشود. |
| سازگاری با Digits | فقط اگر Digits نصب است | جستجو و اتصال دکمهها به کاربران قبلی افزونه Digits کمک میکند. |
| حذف لینک ثبتنام | اختیاری | اگر ثبتنام فقط از طریق موبایل انجام میشود، میتوانید لینک ثبتنام معمولی را حذف کنید. |
| تغییر لینک ثبتنام/بازیابی رمز | اختیاری | برای اتصال لینکها به صفحات دلخواه یا صفحه ورود افزونه استفاده میشود. |
| تغییر مسیر بعد از ورود/خروج | آدرس دلخواه | مثلاً بعد از ورود به پنل کاربری یا صفحه اصلی هدایت شود. |
تنظیمات ورود پیامکی و OTP
فعالسازی ورود پیامکی
با فعال کردن این گزینه، کاربر میتواند با شماره موبایل و کد یکبارمصرف وارد یا ثبتنام کند.
حذف ورود با نام کاربری/رمز
اگر میخواهید ورود فقط با موبایل انجام شود، این گزینه را فعال کنید.
| گزینه | مقدار پیشنهادی | توضیح |
|---|---|---|
| کلید شماره تلفن | Nikan_phone | اگر قبلاً شماره کاربران توسط افزونه دیگری ذخیره شده، کلید متای آن افزونه را وارد کنید. |
| تعداد ارقام کد OTP | ۴ یا ۵ | کدهای ۴ رقمی سریعتر هستند؛ کدهای ۵ یا ۶ رقمی امنیت بیشتری دارند. |
| زمان ارسال مجدد کد | ۱ دقیقه | برای جلوگیری از ارسال پشت سر هم و مصرف اعتبار پیامک. |
| اعتبار کد | ۵ دقیقه | بعد از پایان این زمان، کد قبلی معتبر نیست. |
| استفاده از شماره موبایل به عنوان نام کاربری | فعال | برای سایتهای فروشگاهی ساده و کاربردی است. |
| استفاده از شماره موبایل به عنوان نام نمایشی | فعال یا اختیاری | اگر نمیخواهید نام کاربر خالی بماند، فعال کنید. |
| پاپآپ ثبت شماره موبایل | اختیاری | برای کاربرانی که وارد هستند اما شماره موبایل ندارند، پاپآپ اجباری نمایش میدهد. |
تنظیمات فیلدهای ثبتنام
برای هر فیلد میتوانید یکی از حالتهای «عدم نمایش»، «اختیاری» یا «ضروری» را انتخاب کنید.
پیشنهاد برای ورود سریع
نام، نام خانوادگی، نام کاربری، رمز و ایمیل را عدم نمایش بگذارید و شماره موبایل را ضروری کنید.
پیشنهاد برای سایت رسمی
نام و نام خانوادگی را اختیاری یا ضروری بگذارید تا اطلاعات کاربران کاملتر شود.
اعتبارسنجی شماره موبایل
اگر پنل پیامک تنظیم شده، گزینه اعتبارسنجی با کد تایید را فعال کنید.
تنظیمات پنلهای پیامک
ابتدا در تب «پنل پیامک» سرویس موردنظر را انتخاب کنید. افزونه فقط فیلدهای همان سرویس را نمایش میدهد. بعد از تکمیل فیلدها، تنظیمات را ذخیره کنید و تست ارسال بگیرید.
ملیپیامک / payamak-panel
پترن خدماتیBody IDدر ملیپیامک باید از بخش وبسرویس خدماتی/الگو پترن بسازید. در متن پترن، متغیر کد ورود را با {0} قرار دهید و بعد از تأیید، کد پترن یا Body ID را در افزونه وارد کنید.
| فیلد افزونه | مقدار |
|---|---|
| پنل پیامک | ملی پیامک |
| نام کاربری پنل | نام کاربری پنل ملیپیامک |
| رمز عبور پنل/APIKey | رمز پنل یا APIKey وبسرویس |
| کد پترن | Body ID الگوی تاییدشده |
نمونه متن پترن:
کد ورود شما: {0}
m-mansouri.ir
فراز اساماس / IPPanel
Patternمتغیر کددر فراز/IPPanel باید پترن ارسال بر اساس پترن بسازید. متغیر کد در متن پترن معمولاً به شکل %code% نوشته میشود و همان عبارت بدون علامت درصد، یعنی code، باید در فیلد «نام متغیر کد OTP» افزونه وارد شود.
| فیلد افزونه | مقدار |
|---|---|
| پنل پیامک | فراز اساماس |
| نام کاربری پنل | نام کاربری فراز/IPPanel |
| رمز عبور پنل | رمز پنل |
| شماره ارسالکننده | شماره پترن/ارسالکننده داخل پنل |
| کد پترن | Pattern Code |
| نام متغیر کد OTP | مثلاً code |
نمونه متن پترن: کد ورود شما %code% است. m-mansouri.ir
https://ippanel.com/patterns/pattern کار میکند. اگر پنل شما به Edge API جدید منتقل شده، ابتدا با همین حالت تست بگیرید؛ در صورت خطای پنل، باید اطلاعات جدید پنل را مطابق مستندات همان پنل بررسی کنید.کاوهنگار Lookup
LookupAPI Keyکاوهنگار برای OTP معمولاً از سرویس Lookup استفاده میکند. در افزونه، API Key، نام Template و شماره موبایل استفاده میشود و مقدار کد در پارامتر token ارسال میشود.
| فیلد افزونه | مقدار |
|---|---|
| پنل پیامک | کاوهنگار Lookup |
| API Key | کلید API پنل کاوهنگار |
| کد پترن/Template | نام قالب Lookup |
نمونه قالب: کد ورود شما: %token
SMS.ir
Verify APITemplate IDبرای sms.ir باید از بخش برنامهنویسان/ارسال سریع، قالب بسازید. افزونه از API ارسال verify استفاده میکند و پارامترها را با نام متغیر و مقدار کد OTP ارسال میکند.
| فیلد افزونه | مقدار |
|---|---|
| پنل پیامک | SMS.ir |
| API Key | کلید API پنل جدید sms.ir |
| کد پترن/Template ID | شناسه قالب ارسال سریع |
| نام متغیر کد OTP | نام پارامتر قالب، مثلاً code |
رستاک پیامک
SOAP لازم استبرای رستاک، اکستنشن SOAP روی سرور باید فعال باشد. شماره مقصد در افزونه به فرمت بینالمللی تبدیل میشود و متغیر کد طبق نامی که وارد کردهاید به پترن ارسال میشود.
| فیلد افزونه | مقدار |
|---|---|
| API Key | کلید API رستاک |
| شماره ارسالکننده | شماره خط/ارسالکننده |
| کد پترن | Pattern ID |
| نام متغیر کد OTP | مثلاً code |
رایگان / Trez
AccessHashبرای این پنل، فیلد API Key در افزونه همان AccessHash است. شماره ارسالکننده و Pattern ID نیز باید از پنل دریافت و وارد شود.
| فیلد افزونه | مقدار |
|---|---|
| API Key | AccessHash |
| شماره ارسالکننده | PhoneNumber پنل |
| کد پترن | PatternId |
لیمو SMS
OTP IDدر لیمو SMS، API Key و OtpId لازم است. افزونه مقدار OTP را به عنوان ReplaceToken ارسال میکند.
| فیلد افزونه | مقدار |
|---|---|
| API Key | کلید API لیمو SMS |
| کد پترن | OtpId |
ارسال کد OTP در پیامرسان بله
افزونه میتواند کد OTP را علاوه بر پیامک، از طریق پیامرسان بله نیز ارسال کند.
| حالت | رفتار |
|---|---|
| فقط پیامک | کد فقط از طریق پنل پیامک انتخابشده ارسال میشود. |
| فقط بله با fallback به پیامک | اول بله امتحان میشود؛ اگر ناموفق بود، پیامک ارسال میشود. |
| پیامک و بله همزمان | هر دو کانال امتحان میشوند و اگر یکی موفق باشد، ارسال موفق حساب میشود. |
تست ارسال پیامک
بعد از تکمیل تنظیمات پنل، حتماً یکبار ذخیره تنظیمات را بزنید. سپس در تب «تست ارسال»، شماره موبایل خودتان را وارد کنید.
تنظیمات مرتبط با ووکامرس
تغییر صفحه ورود ووکامرس
اگر فعال باشد، ورود و ثبتنام ووکامرس با فرم ورود نیکان هماهنگ میشود.
نمایش ورود به جای پرداخت
برای کاربران مهمان، قبل از رسیدن به صفحه پرداخت، صفحه ورود/ثبتنام نمایش داده میشود.
برای فروشگاههایی که شماره موبایل مهمترین شناسه مشتری است، بهتر است شماره موبایل هنگام ثبتنام ضروری باشد و در متای billing_phone ذخیره شود.
عیبیابی خطاهای رایج
ابتدا مطمئن شوید تنظیمات ذخیره شدهاند. سپس نام کاربری، رمز/APIKey، کد پترن، متغیر کد و شماره ارسالکننده را مطابق پنل بررسی کنید.
معمولاً Body ID اشتباه است، پترن تایید نشده، رمز/APIKey مشکل دارد یا IP مجاز/دسترسی وبسرویس باید در پنل بررسی شود. برای ملیپیامک در آپدیتهای جدید ممکن است لازم باشد به جای رمز عبور از APIKey استفاده شود.
کد پترن، شماره ارسالکننده و نام متغیر را بررسی کنید. اگر در پترن متغیر را %code% گذاشتهاید، در افزونه باید فقط code وارد شود.
اعتبار زمانی کد، تعداد ارقام OTP، ذخیره شماره موبایل کاربر و کش سایت را بررسی کنید. اگر افزونه کش دارید، صفحه ورود را از کش خارج کنید.
اگر قبلاً از Digits یا افزونه پیامکی دیگری استفاده کردهاید، گزینه جستجو در کاربران Digits یا کلید متای افزونه قبلی را فعال کنید. کلید نمونه: Nikan_phone
اکستنشن SOAP باید روی هاست فعال باشد. از هاستینگ بخواهید افزونه PHP SOAP را فعال کند.
سوالات متداول
آیا میتوان افزونه را روی هر قالبی استفاده کرد؟
بله، افزونه مستقل از قالب نوشته شده و با شورتکدها قابل استفاده در برگه، هدر، المنتور و ووکامرس است.
آیا رمز/APIKey در افزونه پنهان میشود؟
در نسخه فعلی، برای هماهنگی کامل با ساختار قالب، مقادیر پنل پیامک مانند قالب ذخیره میشوند تا مشکل خالی شدن یا رمزنگاری ناسازگار رخ ندهد. دسترسی به این تنظیمات فقط برای مدیر سایت است.
بهترین حالت تنظیم ثبتنام چیست؟
برای فروشگاهها معمولاً شماره موبایل ضروری، نام و نام خانوادگی اختیاری، و نام کاربری/رمز/ایمیل عدم نمایش انتخاب میشود.
اگر پیامک تست موفق بود ولی پیامک نرسید چه کنم؟
ابتدا چند دقیقه صبر کنید، سپس شماره مقصد، اعتبار پنل، وضعیت خط خدماتی و پشتیبانی پنل را بررسی کنید.
منابع و راهنماهای تکمیلی
برای تنظیم دقیق پترنها، API Key، الگوهای OTP و خطاهای پنل، فقط از مستندات رسمی ارائهدهندگان پیامک استفاده کنید:
| پنل / سرویس | لینک رسمی | برای چه چیزی استفاده شود؟ |
|---|---|---|
| ملیپیامک / Payamak Panel | مستندات API ملیپیامک | بررسی ارسال بر اساس الگو، Body ID، APIKey و خطاهای وبسرویس. |
| فراز / IPPanel | مستندات رسمی IPPanel | بررسی روش جدید ارسال پترن، نام متغیرها، Pattern Code و Sender. |
| کاوهنگار | مستندات REST کاوهنگار | تنظیم Lookup، Template و API Key. |
| SMS.ir | مستندات رسمی SMS.ir | تنظیم Verify/Ultra Fast، Template ID و پارامترهای قالب. |
| رستاک پیامک | سایت رسمی رستاک پیامک | دریافت راهنمای API، وضعیت SOAP و اطلاعات Pattern ID. |
| رایگان / Trez | سایت رسمی Trez | بررسی AccessHash، PatternId و PhoneNumber پنل. |
| لیمو SMS | سایت رسمی لیمو SMS | دریافت API Key و OtpId برای ارسال کد OTP. |
| پیامرسان بله | مستندات رسمی توسعهدهندگان بله | دریافت اطلاعات Bot، Access Key و روش ارسال پیام از ربات. |