Developed with ❤️ in Iran. 🇮🇷
JAY Login & Register is a complete solution for WordPress sites that want to simplify and secure their user login and registration process. With this plugin, users can easily register or log in to your site using only their mobile number and a one-time password (OTP).
Key Features
- Protect Specific Content Sections (Shortcode): Use the
[jay_content_lock]shortcode to restrict access to portions of your content within posts and pages, independent of the full-page meta box settings. Choose between two modes:- Redirect Mode: Shows a blurred preview and prompts non-logged-in users to log in by redirecting them to the main login page. After successful login, they are returned to the original page, and the specific locked section can be highlighted.
- Inline Mode: Displays a compact login/registration form directly within the content area where the shortcode is placed. This allows users to authenticate seamlessly without navigating away from the current page, unlocking the content immediately upon success.
Core Login & Registration Features
-
Smart Login & Registration: Automatically detects if a user』s mobile number is new (directing to registration) or existing (directing to login).
-
Digits Plugin Compatibility: Seamlessly recognizes and logs in users previously registered with the Digits plugin.
-
Optional Identity Verification: Enable or disable the requirement for users to provide a National ID or Passport number during registration, with built-in duplicate ID prevention. The system intelligently asks for this information only once.
-
Password & Phone Management: Logged-in users can easily change their registered mobile number or update their password through a dedicated shortcode.
Advanced Security & Anti-Fraud
-
Multiple CAPTCHA Options: Choose from four levels of protection to prevent bot attacks:
-
Disabled: No CAPTCHA.
-
Simple Math CAPTCHA: A basic math question (addition, subtraction, multiplication, division).
-
Invisible Honeypot: An invisible security trap for bots that doesn』t interrupt the user experience.
-
Google reCAPTCHA v3 (Recommended): The most secure, invisible option to intelligently identify bots without user friction.
Social & Gateway Support
- Google Social Login: Enable one-click login and registration using Google accounts. This provides a fast, secure, and password-free authentication method, automatically creating an account for new users or logging in existing ones based on their email.
- Bale OTP (Safir API): A cost-effective alternative to SMS. Users who have the Bale messenger app can choose to receive their verification code directly in the app.
- Eitaa Social Login: Seamless and automatic login/registration for users coming from Eitaa Mini Apps. Provides a frictionless experience with secure authentication using the official Eitaa SDK.
- Multi-Gateway SMS Support: Natively integrates with popular Iranian SMS providers:
- iPPanel (and providers like FarazSMS, ModirPayamak, Taban SMS)
- Kavenegar
- SMS.ir
-
melipayamak
-
Voice OTP Support: In addition to SMS, deliver verification codes via automated voice calls using the Kavenegar gateway.
Advanced Email & SMTP Features
- Email OTP for Login & Registration: Allow users to register and log in securely using a one-time password sent to their email. The registration flow now requires email verification before password creation for enhanced security.
- Built-in SMTP Mailer: Configure the plugin to send emails directly via SMTP for maximum reliability and deliverability, bypassing the default WordPress mail function.
- Customizable Email Templates: Full control over the subject and body of the OTP email using a rich text editor and helpful shortcodes.
- Test Email Functionality: Easily send a test email from the settings panel to verify that your SMTP configuration is working correctly.
Advanced Brute-Force Protection:
-
Protect against OTP and CAPTCHA guessing attacks with configurable settings for:
-
Maximum failed attempts.
- Lockout duration (in minutes).
-
Blocking method (by phone number, IP address, or both).
-
Hide wp-login.php: Secure your site by completely hiding the default WordPress login page and redirecting all access to your custom login page.
- Secure by Design: Built with WordPress security standards in mind, utilizing nonces in all AJAX communications and proper data sanitization.
- Configurable OTP Settings: Customize the length of the OTP code and its validity period (in minutes), complete with a resend timer on the form.
Powerful Admin & User Management
- Admin Area Access Control: Restrict access to the WordPress dashboard (/wp-admin) based on specific user roles.
- User Switching: For administrators and support staff, easily switch to any user』s account to view the site from their perspective without needing their password.
-
Customizable User Columns: Take full control of the 「Users」 table in the admin area:
-
Adds sortable 「Mobile Number」 and 「Jalali Registration Date」 columns.
- Allows hiding of default WordPress columns.
- Allows creating new custom columns based on any user meta key.
Seamless User Experience (UX)
- Smart Redirects: Automatically redirects users back to the page they were trying to access before logging in, creating a seamless and uninterrupted browsing experience.
- Modern & Customizable Form: A beautifully designed, modern form with an optional logo that can be uploaded from the settings panel.
- Custom Landing Page: Set a specific default page to redirect users to after they log in or register.
- Custom Logout URL: Create a user-friendly logout link (e.g., yoursite.com/logout).
- Logged-in Welcome: Users who are already logged in see a welcoming message with a countdown and an automatic redirect to their dashboard, instead of the login form.
Powerful Content & Access Control
-
Content Protection Meta Box: A powerful meta box on the post/page editor allows you to restrict access to content based on:
-
Whether the user is logged in.
- Specific user roles.
- Whether the user has a specific meta key in their profile.
External Services
This plugin connects to third-party services to provide its full range of features. These are optional and only active when configured by the site administrator.
-
Bale (Safir OTP Service)
- Service: Bale Messenger (developers.bale.ai).
- Purpose: To send verification codes (OTP) directly to the user』s Bale app as an alternative to SMS.
- Data Sent: User』s mobile number.
- Link: Bale OTP Service Docs
-
iPPanel (and related gateways)
- Service: iPPanel (ippanel.com) and providers using its infrastructure (FarazSMS, ModirPayamak, etc.).
- Purpose: To send SMS verification codes (OTP).
- Data Sent: User』s mobile number.
- Link: iPPanel Privacy Policy
-
Kavenegar
- Service: Kavenegar (kavenegar.com).
- Purpose: To send SMS or Voice verification codes (OTP).
- Data Sent: User』s mobile number.
- Link: Kavenegar Terms of Service
-
SMS.ir
- Service: SMS.ir (sms.ir).
- Purpose: To send SMS verification codes (OTP).
- Data Sent: User』s mobile number.
- Link: SMS.ir Website
-
MeliPayamak
- Service: MeliPayamak (melipayamak.com).
- Purpose: To send SMS verification codes (OTP).
- Data Sent: User』s mobile number.
- Link: MeliPayamak Website
-
Google reCAPTCHA v3
- Service: Google reCAPTCHA (google.com).
- Purpose: To protect the login/registration form from automated bots.
- Data Sent: Hardware and software information, device data, and the user』s IP address are sent to Google for analysis.
- Links: Google Privacy Policy & Google Terms of Service
-
Service: Google Identity Services (Sign in with Google)
- Provider: Google (google.com)
- Purpose: To allow users to log in or register on your website with one click using their existing Google account.
- Data Sent/Received: When a user clicks the 「Sign in with Google」 button, they are redirected to Google for authentication. After a successful login, Google provides the website with an authorization code. Your server exchanges this code to securely receive the user』s basic profile information (email address, name, and profile picture) to automatically create or log into their account.
- Links: Google Privacy Policy & Google Terms of Service
-
Eitaa WebApp API
- Service: Eitaa (eitaa.com).
- Purpose: To provide social login functionality for users coming from Eitaa Mini Apps.
- Data Sent: When a user authenticates, data is securely exchanged with Eitaa』s servers for validation.
- Link: Eitaa Developer Docs
-
Service: RayganSMS
- Provider: RayganSMS (raygansms.com)
- Purpose: To send SMS verification codes (OTP).
- Data Sent: User』s mobile number.
- Link: RayganSMS Website
امکانات
افزونه JAY Login & Register یک راه حل کامل برای سایتهای وردپرسی است که میخواهند فرآیند ورود و عضویت کاربران خود را ساده و امن کنند. با استفاده از این افزونه، کاربران میتوانند تنها با شماره موبایل خود و دریافت یک کد تایید یکبار مصرف (OTP)، به راحتی در سایت شما ثبتنام کرده یا وارد شوند.
قابلیتهای کلیدی:
-
محافظت از بخشهای خاص محتوا (شورتکد): با استفاده از شورتکد
[jay_content_lock]، دسترسی به قسمتهای دلخواه از متن نوشتهها و برگهها را (مستقل از تنظیمات متاباکس کل صفحه) محدود کنید. دو حالت در دسترس است:- حالت هدایت (Redirect): پیشنمایشی محو از محتوا نمایش داده شده و کاربر غیرعضو به صفحه ورود اصلی هدایت میشود. پس از ورود موفق، کاربر به صفحه قبلی بازگشته و بخش قفل شده میتواند هایلایت شود.
- حالت درونخطی (Inline): یک فرم ورود/عضویت کوچک مستقیماً در همان قسمتی که شورتکد قرار دارد، نمایش داده میشود. این به کاربر اجازه میدهد بدون خروج از صفحه فعلی احراز هویت کرده و محتوا بلافاصله پس از موفقیت باز شود.
-
ورود و عضویت هوشمند:سیستم به صورت خودکار تشخیص میدهد که کاربر جدید است (و به فرم ثبتنام هدایت میشود) یا کاربر قدیمی است (و به فرم ورود هدایت میشود).
- محتوای محافظتشده:دارای یک متاباکس قدرتمند برای محدود کردن دسترسی به نوشتهها و برگهها بر اساس لاگین بودن کاربر، نقش کاربری یا داشتن یک کلید متای خاص.
- ورود و عضویت کامل با ایمیل: علاوه بر موبایل، کاربران میتوانند با ایمیل نیز ثبتنام و وارد شوند. فرآیند عضویت با ایمیل نیز به تایید کد یکبار مصرف (OTP) مجهز شده است تا از صحت ایمیل کاربر اطمینان حاصل شود.
- سیستم ارسال ایمیل SMTP: دارای تنظیمات داخلی برای ارسال ایمیلها از طریق SMTP جهت افزایش اطمینان در تحویل کدها و جلوگیری از اسپم شدن آنها. همراه با قابلیت ارسال ایمیل تستی برای بررسی تنظیمات.
- سیستم کپچا یا ضد ربات (reCAPTCHA/hCaptcha):در این سیستم دیگه به این نیاز نداری چون کد ملی یا گذرنامه داره همون کار را برای شما انجام میدهد احراز هویت با کدملی و بعد پیامک ارسال میشود و باید کد ملی معتبری نیز وارد شود
- 3 مد کپچا: کپچای ریاضی (ضرب / تقسیم/منها/جمع) ، کپچای داخلی نامرئی (Honeypot) ، Google reCAPTCHA v3 (بسیار امن – پیشنهادی)
- احراز هویت: قابلیت دریافت و اعتبارسنجی کد ملی یا شماره گذرنامه با جلوگیری از ثبت شناسههای تکراری. در تنظیمات میتوانید هرکدام را به دلخواه خواستید فعال یا هیچ کدام را فعال نکنید.
- توجه: اگر این گزینهها فعال باشند، کد ملی یا گذرنامه فقط در اولین ورود یا عضویت از کاربر پرسیده و ذخیره میشود. در مراجعات بعدی، سیستم کاربر را شناسایی کرده و مستقیماً به مرحله ورود با رمز عبور / کد تایید هدایت میکند.
- سازگاری با Digits: کاربران قدیمی شما که با افزونه Digits ثبتنام کردهاند، توسط سیستم ما شناسایی شده و میتوانند وارد شوند.
- اتصال به iPpanel: افزونه به صورت اختصاصی با وبسرویسهای جدید و قدیم پنل پیامکی iPpanel.com سازگار است.
- سرویسدهنده پیامک: فرازاس ام اس ، کاوه نگار ، ippanel ، مدیر پیامک، تابان اس ام اس، sms.ir ، raygansms ، ملی پیامک
- سرویسدهنده صوتی: کاوه نگار
- ورود اجتماعی با ایتا:ورود و عضویت خودکار و یکپارچه برای کاربرانی که از طریق برنامکهای ایتا وارد سایت میشوند. تجربهای روان و بدون نیاز به فرم، با احراز هویت امن از طریق SDK رسمی ایتا و اعتبارسنجی هش.
ورود با گوگل
- کنترل دسترسی با نقش کاربری: دسترسی به محتوای محافظت شده را به نقشهای کاربری خاص (مثلاً فقط مشترکین ویژه) محدود کنید.
- تنظیمات :تغییر شماره موبایل کاربر یا رمز عبور
- نکته: تعیین تعداد ارقام کد تایید
- اعتبار کد تایید (دقیقه):کاربر تا چند دقیقه برای وارد کردن کد فرصت دارد؟ (زمان تایمر ارسال مجدد)
- حداکثر تلاش برای کد تایید: کاربر چند بار میتواند کد تایید را اشتباه وارد کند قبل از اینکه موقتاً مسدود شود؟
- مدت زمان مسدودیت (دقیقه): پس از تلاشهای ناموفق، کاربر برای چند دقیقه مسدود شود؟
- روش مسدودسازی: مسدودسازی بر اساس شماره موبایل (پیشنهادی) یا مسدودسازی بر اساس آدرس IP / میتوانید یک یا هر دو روش را برای امنیت بیشتر انتخاب کنید.
- دسترسی: پنهان کردن ستون ها در قسمت کاربران که چه ستون هایی نمایش داده بشوند و چه ستون هایی پنهان شوند
- دسترسی: ساخت ستون های اضافی در قسمت کاربران با متاکی
- دسترسی:چه کاربرانی به wp-admin دسترسی داشته باشند.
- امنیت: پنهانسازی صفحه wp-login.php، استفاده از Nonce در تمام ارتباطات AJAX و پاکسازی دادههای ورودی.
- امکانات: امکان جا به جایی بین کاربران یا switch user
- لینک خروج : ایجاد لینک خروج سفارشی (مثلاً site.com/logout).
- ستون کاربران: افزودن ستون تاریخ عضویت به تاریخ شمسی و همچنین شماره موبایل به لیست کاربران و مرتبسازی پیشفرض بر اساس آن.
- ریدایرکت هوشمند: کاربران پس از ورود/ثبتنام به همان صفحهای که در آن بودهاند بازگردانده میشوند تا تجربه کاربری یکپارچهای داشته باشند.
- ورود/عضویت ووکامرس :نیاز به شورتکد خاصی نیست فقط کافیه تیک ورود را در برگه های ووکامرس اعمال کنید
- صفحه فرود سفارشی: میتوانید یک برگه خاص را به عنوان مقصد نهایی کاربر پس از ورود از صفحه لاگین اصلی، مشخص کنید.
- فرم زیبا و قابل سفارشیسازی: فرم ورود دارای ظاهر مدرن و لوگوی قابل تنظیم از طریق پنل تنظیمات است.
- سبک، امن و استاندارد: تمام کدها بر اساس آخرین استانداردهای امنیتی وردپرس نوشته شدهاند.
توسعه دهنده
جلال رضایی چاهوکی






