افزونه فروش لایسنس و کارت شارژ با گرویتی فرم

سلام

افزونه فروش لایسنس، کارت شارژ، رمز کد، سی دی کی و آنتی ویروس و … توسط بنده برنامه نویسی شده که از امروز از طریق همین صفحه قابل خریداری هست. برخی امکانات افزونه به شرح زیر هست:

  1. تعداد بی نهایت فید و بی نهایت لایسنس برای هر فرم
  2. استفاده از منطق شرطی برای لایسنس ها
  3. وارد کردن لایسنس ها به 3 روش دستی، ایجاد خودکار و API
  4. امکان آپلود لایسنس های دستی از طریق فایل txt,csv
  5. امکان اختصاص 4 فیلد برای هر لایسنس
  6. امکان اضافه کردن پسوند و پیشوند دلخواه به هر لایسنس
  7. امکان رمزنگاری لایسنس ها قبل از ذخیره داخل دیتابیس توسط توابع گرویتی فرم و یا توابع دلخواه شما
  8. امکان تحویل لایسنس ها از طریق تاییدیه ها و اعلان ها
  9. امکان بررسی وضعیت و تاریخ انقضای لایسنس ها توسط API
  10. ….

راهنمای تصویری و فارسی کار با افزونه :

ابتدا صرف نظر از افزونه لایسنس منیجر٬ مانند همه فرم های گرویتی فرم یک فرم جدید میسازیم. در حین ساختن فرم میتونیم از تمام فیلدهای گرویتی فرم استفاده کنیم ولی بنده برای آموزش فقط از چند فیلد ساده به صورت تصویر زیر استفاده کردم. در واقع فقط فیلدهای ضروری که حتی داخل اسکریپت Freer هم وجود دارند رو شبیه سازی میکنم.

در تصویر بالا فیلد های “نام و نام خانوادگی – موبایل” رو از نوع فیلد “متنی” قرار دادم. فیلد های “نوع کارت شارژ –  تعداد شارژ – مجموع” از بخش فیلد های “قیمت گذاری” انتخاب شده اند. در صورتی که با فیلدهای قیمت گذاری آشنایی ندارید حتما و حتما قبل از ادامه آموزش “راهنمای آشنایی با فیلدهای قیمت گذاری” رو از لینک زیر مطالعه بفرمایید:

آشنایی با فیلدهای قیمت گذاری

در فرم بالا شما هیچ محدودیتی نخواهید داشت و میتونید هر نوع فرمی که شامل منطق های شرطی هم باشه بسازید و مشکلی وجود ندارد.

مرحله بعدی اتصال فرم مورد نظر به درگاه های پرداخت هست. در صورتی که قصد دارید برای فروش لایسنس ها یا همون کارت شارژ ها از کاربر هزینه دریافت کنید باید فرم مورد نظر رو به درگاه پرداخت هم وصل کنید. قبلا توی سایت آموزش اتصال فرم ها به درگاه های پرداخت رو به صورت کامل توضیح دادیم که میتونید از لینک زیر مطالعه فرمایید:

راهنمای اتصال گرویتی فرم به درگاه های پرداخت

تنظیمات همگانی و اولیه افزونه لایسنس منیجر:

خب ما تا اینجا مانند قبل فقط فرممون رو ساختیم و به درگاه های پرداخت وصل کردیم و هیچ کاری با افزونه لایسنس منیجر نداشتیم. در ادامه میخایم نحوه اتصال فرم ها به لایسنس ها (شارژها) رو توضیح بدیم.

در صورتی که اولین بار هست که افزونه رو به فرمی متصل میکنید لازم هست که برای اولین بار یک تنظیمات خیلی مختصری رو به شرح زیر انجام بدید:

به مدیریت وردپرس >> فرم ها >> تنظیمات >> لایسنس مراجعه کنید و تصویر زیر رو خواهید دید:

خب 2 تا گزینه در بخش تنظیمات وجود داره که یکی روش رمزنگاری هست و دیگری تنظیمات مربوط به API هست.

رمزنگاری :

خب اگر شما لایسنس ها رو به صورت دستی وارد افزونه کنید٬ اونها داخل یک جدول از دیتابیس ذخیره میشن که اگر فردی به اطلاعات دیتابیس شما دسترسی داشته باشه عملا میتونه لایسنس ها رو ببینه و لایسنس ها فاش میشن. پس بهتره قبل از ذخیره لایسنسها داخل دیتابیس انکریپت بشن و موقع ارائه به کاربر دیکریپت بشن. پس اگر میخاید که این عمل صورت بگیره یکی از 2 روش رمزنگاری “تابع رمزنگار گرویتی فرم” یا “تابع رمزنگار دلخواه” رو انتخاب کنید.

تابع رمزنگار گرویتی فرم: این روش از تابعی که خود گرویتی فرم برای رمزنگاری نوشته استفاده میکنه و نیازی نیست شما کار اضافه دیگری انجام بدید. فقط کافیه این گزینه رو انتخاب کنید و ذخیره نمایید.

تابع رمز نگار دلخواه: اگر این روش رو انتخاب کنید اون موقع شما باید داخل functions.php قالب یا افزونه شخصی خودتون 2 تا تابع php جدید برای encrypt و decrypt کردن بنویسید و اون ها رو به 2 تا فیلتر زیر هوک کنید تا لایسنس ها قبل از ذخیره و نمایش به کاربر از 2 تا فیلتر شما عبور کنند:


$text = apply_filters('ghlcm_encrypt', $text, $this); //for encryption

$text = apply_filters('ghlcm_decrypt', $text, $this); //for decryption


تذکر : در صورتی که با برنامه نویسی PHP و استفاده از هوک های وردپرس آشنایی ندارید همون روش تابع رمزنگار گرویتی فرم رو انتخاب کنید. روش تابع رمزنگار دلخواه برای استفاده های پیشرفته تر هست. ولی در هر صورت روش رمزنگاری رو فقط یکبار برای همیشه ست کنید و بعد از اون دیگه تغییرش ندید. چرا؟ چون شما مثلا با یه الگوریتم اولیه ای میاید لایسنس ها رو انکریپت میکنید و به دیتابیس میفرستید و بعدش ممکنه با تغییر روش رمزنگاری نتونید مجددا افزونه رو دیکریپت کنید چون معیار رمزنگاری عوض شده!


API:


خب گزینه بعدی که در تنظیمات مشاهده میکنید مربوط به دسترسی به API هست. در صورتی قصد دارید از API استفاده کنید باید این گزینه رو فعال کنید و یک توکن (رمز) براش ست کنید تا هرکسی که قصد داشت به اطلاعات از طریق API دسترسی پیدا کنه رمز رو وارد کنه. البته بعدا هر موقع خواستید میتونید این توکن رو عوض کنید و مشکلی نداره.


برای استفاده از API هم مستندات کامل استفاده از API داخل همون صفحه تنظیمات وجود داره که جهت جلوگیری از پیچیده شدن آموزش از آوردن تصویر مستندات خودداری کردم.


خب تمامه و کافیه که تنظیمات اصلی افزونه رو ذخیره کنید.


تنظیمات همگانی افزونه انجام شد و مرحله بعدی اتصال فرم به لایسنس منیجر هست.


اتصال فرم به افزونه لایسنس منیجر:


هر فرمی که بسازید تو بخش تنظیمات فرم یک زیر منو به اسم “لایسنس ها” اضافه میشه که در تصویر زیر هم مشخصه:



روی این گزینه کلیک کنید و وارد صفحه ای میشد که لیست تمام لایسنس ها (شارژ ها) وجود خواهند داشت.



خب ما فعلا هیچ خوراکی نداریم. خوراک چیه؟ خوراک همون فیده که خود گرویتی فرم به اسم Feed در نظر گرفته. حالا چرا ترجمه شده خوراک یادم نیست. ولی خب مساله مهمی نیست و از بحث اصلی دور نمیشیم. ما الان باید خوراک هامون رو بسازیم.


ما طبق فرمی که ساخته بودیم 3 تا خوراک داریم. خوراک های : “کارت شارژ 2 هزار تومانی” – “کارت شارژ 5 هزار تومانی” و “کارت شارژ 10 هزارتومانی” که باید بسازیمشون.


خب به تریتب شروع میکنیم. من اول روی دکمه “افزودن جدید” توی تصویر بالا کلیک میکنم تا خوراک “کارت شارژ 2 هزار تومانی” رو بسازم و کامل توضیح میدم و بقیه هم دقیقا مثل همون هستن. وقتی وارد صفحه افزونه جدید خوراک میشیم چند بخش میبینیم که به تفکیک توضیح میدم.


بخش اول به صورت تصویر زیر هست:



خب توی این بخش ما عنوان لایسنس و کلیدهاشو وارد میکنید. ما تا 4 فیلد میتونیم برای هر لایسنس اختصاص بدیم.


عنوان لایسنس رو من اینجا به صورت زیر تغییر میدم “کارت شارژ 2 هزار تومانی” و سپس کارت شارژها رو وارد میکنم. وارد کردن شارژ ها هم خودش به 3 روش امکان پذیره که توضیح میدم:


روش دستی: توی روش دستی ما خودمون لایسنس ها رو یا دونه دونه وارد میکنیم یا قبلش میریزیم توی یه فایل txt و اپلود میکنیم… اینجا لایسنس ها از ما گرفته میشن و بعد از رمزنگاری داخل دیتابیس ذخیره میشن.


روش قاب (الگو): قاب ها یه سری الگو هستند که ما به افزونه میدیم و افزونه هم طبق همون الگو به صورت خودکار برامون لایسنس تولید میکنه. این مبحث قاب فقط مربوط به این موضوع نمیشه و توی گرویتی هم قبلا داشتیم که توی لینک زیر کامل توضیح دادم ولی خب یه دکمه راهنما هم طبق تصویر بالا مشاهده میکنید که اگر روش کلیک کنید بهتون آموزش استفاده از قاب همراه با مثال نشون داده میشه.:


آشنایی با مفهوم قاب (الگو)


روش رستفول: فرض کنید شما یک سرور دیگری دارید و میخواید لایسنس ها و شارژ ها از طریق API از اون سرور بگیرید و به کاربر تحویل بدید. پس باید گزینه رستفول رو انتخاب کنید. راهنمای استفاده از رستفول هم توی همون صفحه اش کامل اومده و باز هم بخاطر جلوگیری از پیچیده شدن آموزش تصویر راهنمای API رو نمیارم و میتونید توی همون صفحه بعد از انتخاب گزینه رستفول آموزش API مربوط بهش رو مشاهده کنید.


خب حالا من باید کارت شارژ های 2 هزار تومنی خودم رو وارد کنم. پس خروجی کار به صورت تصویر زیر در میاد:



فک میکنم واسه کارت شارژ کلا 2 فیلد رمز شارژ و سریال کافیه.. حالا بازم شما میتونید بسته به نوع لایسنسی که میفروشید حالا یا شارژ موبایل یا لایسنس انتی ویروس یا رمز آیتونز یا هرچیز دیگری تا 4 فیلد ایجاد کنید.


این نکته رو هم بگم شما میتونید داخل این فیلدها لینک عکس هم وارد کنید. مثلا لینک یه عکس با پسوند png وارد کنید اون موقع وقتی به کاربر ارایه داده میشه تصویرش نمایش داده میشه. این برای زمانی مناسبه که مثلا لایسنس شما به صورت بارکد هست.


خب اون بخش وضعیت هم که کاملا مشخصه . میتونید غیرقابل فروشش کنید تا دیگه نشه اون لایسنس رو فروخت تا حالا بعدا هر موقع خواستید دوباره قابل فروشش کنید.


اما سوالی که پیش میاد اینه اون “مدت زمان رزرو هر لایسنس” چی هست؟ ببینید فرض کنید کلا 2 تا شارژ توی انبار شما موجوده… یه نفر میاد و هر 2 تا رو سفارش میده میره تو بانک و هنوز مراحل پرداختش کامل نشده که یه نفر دیگه میاد توی سایت شما و میخاد لایسنس بخره.. طبیعتا چون هنوز نفر قبلی فرایند خریدش کامل نشده پس نفر دوم هم اجازه داره که بتونه اون 2 تا شارژ رو سفارش بزنه… حالا نفر دوم هم وارد بانک میشه و با وارد شدن نفر دوم یهو نفر اولی پرداختش رو کامل میکنه و میاد 2 تا لایسنسش رو میگیره و میره.. حالا نفر دوم هم پرداختش رو کامل میکنه و میاد میبینه که لایسنس ها تمام شدن! یعنی پول داده ولی لایسنس بهش نرسیده!


حالا این مدت زمان رزرو هر لایسنس کارش چیه؟ کارش اینه که وقتی یه نفر لایسنس درخواست میده لایسنس به تعداد لایسنسی که سفارش داده براش رزرو میشه و اگه تا مثلا 15 دقیقه پرداخت کرد که لایسنس مال خودش میشه ولی اگر پرداخت نکرد لایسنس ها مجددا آزاد میشن و مشکلی که بالا عرض کردم دیگه پیش نمیاد. چرا؟ چون طبق داستان بالا نفر اول 15 دقیقه وقت داره پول رو بریزه و تا 15 دقیقه نگذره کسی نمیتونه اون 2 تا لایسنسی که براش رزرو شده رو سفارش بده.


آپلود از طریق فایل txt یا csv : وقتی یک فایل txt یا csv رو از طریق گزینه Browse انتخاب میکنید یه سری گزینه ها جدید به صورت تصویر زیر اضافه میشن:



خب شما به روش های مختلفی میتونید محتویات اون فایل txt رو داشته باشید که یک نمونه اش به صورت زیره :


2566556656544,a6556656565565


6565565665664,56656556565665


8952659862551,11111111565656


6565565665565,56565656565656


مثلا توی مثال بالا ما 4 تا شارژ داریم که هر کدوم روی توی یک خط جدید وارد کردیم و رمز شارژ و سریال شارژ رو با ویرگول از هم جدا کردیم. پس توی بخش “جدا کننده لایسنس ها:” همون \n رو میزاریم یعنی هر شارژ توسط خط جدید از هم جدا شدن. و “جدا کننده کلید ها” ( جدا کننده ی رمز شارژ از سریال) هم که ویرگول بود. حالا اگر با خط تیره جدا کرده بودید میزارید – یا هرچیز دیگه ای… . این تنظیمات باعث میشن شما بتونید فایل های txt با هر فرمتی که هستند رو بدون محدودیت ایمپورت کنید.


جهت در نظر گرفتن کلید ها : خب ممکنه توی فایل txt شما اول سریال رو وارد کرده باشید و بعدش با ویرگول رمز شارژ رو وارد کرده باشید ولی اینجا میخاید که کلید اول رو رمز شارژ در نظر بگیره و کلید دوم رو سریال در نظر بگیره که جهتش رو هم میتونید از اینجا مشخص کنید.


علامت قابل فروش بودن : مثلا مشخص میکنید که اگر فیلد 5م داخل txt برابر yes یا هر علامت دلخواه دیگری بود یعنی قابل فروشه وگرنه غیرقابل فروشه که اینو دست نزنید بهتره چون پیشفرض قابل فروشه.


خب روش دستی رو که یاد گرفتید. حالا یک نمونه هم روش خودکار ایجاد میکنم که در تصویر زیر مشاهده میکنید:



همونطور که عرض شد ابتدا راهنمای آشنایی با قاب رو از لینک آموزشی که تو سایت گذاشتیم یا دکمه “راهنما” که در تصویر بالا مشاهده میکنید مطالعه کنید. خب طبق تصویر بالا با هر خرید یک رمز شارژ کاملا تصادفی که تمام عددی هست و 12 رقمی هست ایجاد میشه و سریال هم به صورت یک رشته که ابتدا 4 عدد و سپس 5 حروف و بازهم سپس 5 عدد خواهد بود.


خب مرحله وارد کردن لایسنس ها به اتمام رسید. به بخش سایر تنظیمات خوراک میریم:


پسوند و پیشوند:



توسط این گزینه میتونید برای هر کلید یک پسوند و پیشوند اختیاری قرار بدیم که وقتی به کاربر ارائه میشه اون رشته ها به اول و آخر اون کلید اضافه بشن. از مزیت های این روش اینه که میشه از “برچسب های ادغامی” یا همون شورتکدهای گرویتی فرم هم استفاده کرد تا این پسوند و پیشوند به صورت داینامیک تولید بشن.


تعداد لایسنس :


تا الان که هرچیزی توی این آموزش عرض کردیم توضیح واضحات بود! و مشخص بودن ولی توی بخش تعداد لایسنس ها تا الان چند نفر از خریدارن ایمیل زدن که سر در نمیاریم داستان چیه.


خب این بخش رو سعی میکنم با جزییات بیشتری توضیح بدم. شما با این بخش فرمول ها قبلا توی فیلدهای محاسباتی هم آشنا شده بودید.


ببینید شما داخل فرمتون چند حالت خواهید داشت:


1- یا به هر خریدار فقط به تعداد ثابتی لایسنس ارائه میدید.


2- انتخاب تعداد لایسنس رو به عهده خود کاربر میذارید. مثلا همین کاری که ما توی این فرممون کردیم و یک فیلد “تعداد” به فرم اضافه کردیم.


3- یا توی فرم از یه سری منطق های شرطی استفاده کردیم که تعداد لایسنس ها وابسته به این شرطها خواهند بود.


به تفکیک سه حالت بالا توضیح میدم.


اگر حالت 1 رو انتخاب کردید مثلا میخواید که هر کسی که فرم رو پر کرد مثلا 1 شارژ بهش داده بشه توی بخش تعداد لایسنس ها یک عدد ثابت مثل 1 وارد کنید. اگر میخواید که که مثلا هر کی فرم رو پر کرد 2 تا بهش شارژ داده بشه عدد 2 رو وارد کنید و … :



اگر از حالت 2 استفاده میکنید مثلا یک فیلد ایجاد کردید که کاربر خودش انتخاب کنه چند تا لایسنس یا شارژ و …. میخواد باید شورتکد (برچسب ادغام) همون فیلد رو مطابق تصویر زیر داخل بخش تعداد لایسنس ها وارد کنید. طبق تصویر پایین به هر تعدادی که کاربر توی فیلد “تعداد شارژ” درخواست کنه به همون تعداد شارژ از انبار کم میشه و بهش تحویل داده میشه:



حالت 3 ام که عرض کردم حالت پیشرفته تر همون حالت 2 هست یعنی یه سری منطق های شرطی توی فرم گذاشتید که بر اساس طراحی فرمی که انجام دادید باید برچسب های ادغام (شورتکد) های اون فیلدها رو با هم جمع و تفریق و …. کنید. یه نکته هم بدونید بد نیست : اگر اون شرط برقرار نشه مقدارش 0 میشه و این خوبه.


خب فقط بقیه تنظیمات باقی میمونه که توی تصویر زیر مشخص است :



خطای موجود نبودن لایسنس: زمانی که کاربر لایسنس درخواست کنه ولی لایسنس به تعداد کافی وجود نداشته باشه از ثبت شدن فرم توسط پیامی که مشخص میکنید جلوگیری میشه.


وضعیت ارائه: اگر فرمتون به درگاه پرداخت متصل است تیک “فقط بعد از پرداخت موفق لایسنس را ارائه بده” رو بزنید تا فقط وقتی تراکنش موفق بود لایسنس یا شارژ به کاربر داده بشه. بعضی اوقات هست که فرم به درگاه وصله ولی مثلا یه کد تخفیفی چیزی به کاربر میدید که لایسنس براش رایگان در میاد و دیگه کار به پرداخت و تراکنش نمیرسه که میتونید تیک دوم یعنی “و یا اگر مبلغ کل فرم 0 بود و نیازی به پرداخت نبود” رو هم بزنید تا در این شرایط هم لایسنس بهش تعلق بگیره.


منطق شرطی: این بخش خیلی مهم هست. ما توی این خوراک کارت شارژ های 2 هزار تومنی رو وارد کرده بودیم و میخوایم وقتی کاربر گزینه “2 هزار تومنی” رو انتخاب کرد این شارژ ها بهش داده بشه پس باید شرط بزاریم که این خوراک رو وقتی فعال کن که کاربر گزینه “2 هزار تومنی” رو انتخاب کرده.


تاریخ انقضا و وضیعت اولیه لایسنس: این 2 تا گزینه فقط برای زمانی استفاده میشه که شما قصد دارید از API استفاده کنید. مثلا یک اسکریپت نوشتید و میخاید به کاربرها لایسنس بفروشید تا وقتی اون لایسنس منقضی نشده بتونن از اسکریپت شما استفاده کنند. در این شرایط این 2 تا گزینه رو فعال میکنید. تاریخ انقضا رو که فعال کنید بهتون میگه از بین این 4 تا فیلدی که لایسنس ها رو توش وارد کردید کدوم یکی نشانگر تاریخ انقضا هست و همچنین ازتون میپرسه که تاریخی که وارد کردید به چه فرمتی بوده مثلا به صورت Y/m/d بوده یا فرمت دیگه ای؟



یه نکته وجود داره برای این بخش:  اگر میخواید از تاریخ انقضا استفاده کنید همیشه که تاریخ انقضا رو که به صورت یک تاریخ از پیش تعیین شده مثلا 2018/01/30 وارد نمیکنید بلکه برخی اوقات به صورت 60 روز یا 90 روز و …. وارد میکنید. به 2 تصویر زیر نگاه کنید:



توی تصویر بالا ما میخوایم که لایسنس دقیقا در زمان 2020/10/30 منقضی بشه. پس توی تنظیمات 2 تا عکس قبلی فرمت تاریخ رو به صورت Y/m/d وارد میکنیم.



ولی توی تصویر بالا ما میخوایم لایسنس 90 روز بعد از اینکه کاربر خریدش رو انجام داد منقضی بشه … یعنی 90 روز نسبت به تاریخ خرید. پس فیلد فرمت تاریخ رو بجای Y/m/d خالی رها میکنیم.


خب کار با خوراک به پایین رسید. دقیقا همین کاری که برای خوراک 2 هزارتومنی انجام دادیم رو برای بقیه خوراک های 5 یا 10 هزارتومنی و… هم میتونید انجام بدید.


ارائه لایسنس ها به خریدارن:


خب بعد از اینکه لایسنس ها رو به فرم متصل کردیم کار تقریبا تمام است ولی بهرحال باید این لایسنس ها رو بعد از خرید به کار نمایش داد. به 3 روش میتونیم این لایسنس ها رو به خریدارن ارائه بدیم : 1- تاییدیه ها 2- اعلان ها(ایمیلها) 3- ارسال با پیامک


قبل از اینکه ادامه رو مطالعه کنید باید با تاییدیه ها و اعلان ها آشنا باشید که قبلا توی سایت آموزش کاملشون رو گذاشتیم که از طریق لینک های زیر قابل دسترسی هستند:


http://https://gravityforms.ir/wp-content/uploads/saman-1.jpgforms.ir/23098

http://https://gravityforms.ir/wp-content/uploads/saman-1.jpgforms.ir/23126

خب در صورتی افزونه لایسنس منیجر به فرم متصل بشه داخل لیست تاییدیه ها و اعلان های اون فرم شورتکد ها (برچسبهای ادغام) مربوط به لایسنس های اون فرم هم مطابق تصویر زیر ارائه میشه:



اگر حالت جدولی رو انتخاب کنید لایسنس ها در یک جدول استایل بندی شده و مرتب به کاربر نشون داده میشن ولی توی حالت متن ساده لایسنس ها فقط به صورت متن ساده ارائه میشن.


اگر شورتکد تمام لایسنس ها رو انتخاب کنید تمام لایسنسهای خریداری شده توسط کاربر یکجا نمایش داده میشن. مثلا اگه همزمان هم شارژ 5 تومنی خریده باشه هم 2 تومنی همشون نشون داده میشن. ولی اگر بخواید به تفکیک نمایش بدید هم میتونید بجای شورتکد تمام لایسنس ها ٬ از شورتکدهای زیرش که تفکیک شده هستند استفاده کنید.


یک نمونه از نحوه ارائه لایسنس جدولی در تصویر زیر آورده شده:



عین همین وضعیت هم داخل افزونه پیامک نسخه 2.2.5 به بالا اضافه میشه ولی دیگه حالت جدولی رو نداره چون داخل متن پیامک فقط باید متن ساده باشه.



تصویر زیر هم از لایسنس های فروخته در صفحه مدیریت پیام ورودی گرفته شده:



تمام!


پی نوشت: در صورتی که تعداد لایسنس های شما در هر فید خیلی زیاد (مثلا حدود 2000 لایسنس) هست باید مقدار max_input_vars رو از داخل تنظیمات سرور افزایش بدید وگرنه در حین ذخیره لایسنس ها به مشکل برمیخورید. بعنوان مثال برای حدود 2000 لایسنس مقدار max_input_vars = 50000 گزینه مناسبی هست.


به این post امتیاز دهید

12 پاسخ

  1. سلام وقت بخیر
    سوالی داشتم در مورد ارائه کد فعال سازی در مورد محصولات آموزشی که بفرمایید میشه از این افزونه استفاده کرد و اینکه این افزونه فقط سریال ارائه میده و بایستی محصول قبل از آن قفل گذاری بشه یا خیر؟
    آیا برای قفل گذاری روی محصول هم راهکاری هست یا خیر که بتوان از طریق آن سریال تولید نمود یا خیر؟
    سپاس

    1. سلام
      متوجه سوال شما به صورت دقیق نشدم.
      این افزونه به سه روش میتونه کد لایسنس به کاربر ارایه بده. روش اول روش دستی هست که لایسنس ها رو یا دستی یا اپلود میکنید. روش دوم یک الگو بهش میدید و خودش بر اساس الگو لایسنس رندم میسازه و به کاربر میده. روش سوم اینه که بعد از خرید کاربر به api شما وصل میشه و از طریق api لایسنس رو از سرور مقصد میگیره و بهش تحویل داده میشه.
      قفل گذاری و … به خود نرم افزار شما مرتبط میشه نه این پلاگین.

  2. سلام
    من چند تا سوال داشتم
    1. این افزونه کد رو به چه شکل نمایش میده
    2. امنیتش چقدره
    3. میتونم براش تعیین کنم تا چه مقدار تحویل خودکار باشه و بعد از ان تا چه مقدار با تایید من
    4. کد ها به ایمیل هم میتونه ارسال کنه؟
    5. چناچه افزونه با دلیل منطقی برای کار من خوب نبود مبلغ برگشت داده میشه؟

    1. سلام
      1- هم به صورت متن ساده نمایش میده هم به صورت جدولی که خود گرویتی فرم داره. نمونه تصویرش توی لینک زیر گذاشتم :
      https://hannanstd.github.io/Gravity-Forms-License-Manager/#deliver-section

      2-اطلاعات توی جدول wp_gravitylcm ذخیره میشن که میتونید از طریق تابع خود گرویتی فرم یا تابع دلخواه خودتون قبل ذخیره توی دیتابیس انکریپت کنید :
      https://hannanstd.github.io/Gravity-Forms-License-Manager/#settings-section

      3- باید فید های جدا بسازید ولی درست متوجه منظورتون نشدم بهمین خاطر میگم خیر این امکان رو نداره.

      4 – بله دیگه چون شورتکد های گرویتی فرم هستند داخل اعلان ها و تاییدیه ها و پیامک هم میشه استفاده کرد.

      5- خیر ابتدا کامل توضیحات رو بخونید و اگر مطمئن بودید خرید کنید وگرنه هزینه برگشت داده نمیشه.

  3. سلام
    این افزونه شما این قابلیت داره که وقتی به مشتری کد لایسنس تحویل می دهد وضعیت شفارس “تکمیل شده ” شود
    و وقتی کد لایسنس نیست وضعیت مشتری بزند “در حال انجام” که بعد صورت دستی براشون کد لایسنس در صفحه سفارش شون در سایت قرار بدهیم؟

جدیدترین مقالات