مشاهده اطلاعیه سایت

تاییدیه ها در گرویتی فرم

پلاگیت

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

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

تاییدیه ها :

ابتدا از طریق منوی “تنظیمات” که داخل محیط ویرایشگر فرم وجود داره گزینه “تاییدیه ها” رو انتخاب میکنیم تا لیست تاییدیه ها ظاهر بشن.

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

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

توی تصویر بالا یک ویرایشگر دیداری مشاهده میکنید که متن اولیه اش به صورت “از تماس شما متشکریم! به زودی با شما تماس می گیریم.” هست که میتونید این متن رو ادیت کنید و یا از کدهای HTML داخلش استفاده کنید. البته اگر از کد های html استفاده میکنید اون تیک “غیرفعال کردن قالب خودکار” هم بزنید وگرنه کلی فاصله و … اضافه میشه.

سمت راست ویرایشگر دیداری هم یک دکمه مربع ریز می بینید که وقتی روش کلیک میشه یک پنجره کوچیکی مطابق تصویر بالا دیده میشه که لیست شورتکد های قابل استفاده داخلش موجود هست. شورتکد های نظیر “شماره تراکنش” ، “وضعیت پرداخت” ، “فیلدهای پر شده توسط کاربر” و …. که با انتخاب هر کدوم از این موارد شورتکدش به متن تاییدیه اضافه میشه بعد از ثبت فرم به کاربر نشون داده میشن.

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

بجز نوع “متن” ، 2 نوع تاییدیه دیگر نظیر “برگه” و “انتقال” هم وجود دارند که عملکردشون عین همه.

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

اما ” ” دقیقا چی هست؟

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

http://hannanstd.ir/?name=hannan&fid=7

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

تاییدیه های اضافه تر از تاییدیه پیشفرض:

مجددا از محیط ویرایشگر فرم از طریق منوی “تنظیمات” >> “تاییدیه ها” وارد صفحه ای میشیم که لیست تاییدیه ها داخلش وجود داره ولی این بار بجای ویرایش تاییدیه پیشفرض، یک تاییدیه جدید به صورت زیر میسازیم.

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

شما هر تاییدیه ای بجز تاییدیه پیشفرض که میسازید؛ قبل از دکمه “ذخیره” یک بخش جدید اضافه میشه به اسم “منطق شرطی”. و باید بدونید که اگر این منطق شرطی رو ست نکنید چون شرطش برقرار نمیشه پس گرویتی فرم هم این تاییدیه رو نشون نمیده.

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

این نکته ای بود که تا الان ده ها نفر به دلیل رعایت نکردنش به مشکل خوردن و مثلا ایمیل میزنن میگن ما توی درگاه های پرداخت برای وضعیت “موفق” ، “ناموفق” و “انصرافی” تاییدیه های جدا میسازیم ولی چرا وقتی کاربر پرداخت رو انجام نمیده و کنسل میکنه باز هم تاییدیه پیشفرض یا موفق بهش نشون داده میشه؟ بعد هم میگن مشکل از افزونه درگاه پرداخت هست و شاکی هم هستن. پس الان متوجه شدید که علت مشکل شما ست نکردن منطقی شرطی تاییدیه هست البته مطابق تصویر زیر من توی تنظیمات درگاه های پرداخت این نکته رو خاطر نشون کردم ولی گویا کسی دقت نمیکنه !

باز هم در ادامه توضیح میدم چطور این مورد رو دور بزنید.

برقرار سازی همیشگی منطق شرطی تاییدیه ها:

توی مبحث قبلی عرض کردم که منطق شرطی تاییدیه ها بجز تاییدیه پیشفرض گرویتی اجباری هستن و باید سِت بشن وگرنه تاییدیه عمل نمیکنه اما شاید شما هم مثل خیلی ها نیاز داشته باشید که این بخش منطق شرطی رو غیر فعال کنید تا تاییدیه همواره برقرار بشه و نشون داده بشه. برای اینکه منطق های شرطی همواره برقرار بشن تا توی تاییدیه های مربوط به پرداخت های “موفق؛ناموفق و انصرافی” هم به مشکل نخورید منطق شرطی تاییدیه ها رو به صورت زیر ست کنید:

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

خب امیدوارم تمام مباحث مربوط به تاییدیه ها رو یاد گرفته باشید تا به مشکل نخورید. انصافا هم چیزی خاصی نداشت.

نوشته های مرتبط

24 نظر

  1. محمداحسان

    سلام و خسته نباشید
    من سه تا تاییدیه ساختم با نام پرداخت موفق پرداخت ناموفق و انصراف از پرداخت و برای همه منطق شرطی که گفتید (مثلا نام خانوادگی هست و نیست )رو گذاشتم

    و هرکدام رو روی درگاهم ست کردم اما چه پرداخت انجام شه و چه انصراف و چه ناموفق در هر حالت تاییدیه پیش فرض رو نشون میده

    اما پرداخت وضعیتش در پنل درست هست یعنی اگر موفق باشه میزنه موفق و ناموفق و انصرافی هم همونجور

    چکار کنم که برای هرکدام از روش ها پیغام خاصم نمایش داده بشه و تاییده پیشفرض برای همه نشون داده نشه.

    1. ایشارژیو

      سلام
      این روشی که گفتید برای تاییدیه ها کاملا درست کارمیکنه، دست شما دردنکنه…واقعا بدون این توضیحات انگار افزونه مشکل داشت.
      دوستمون هم احتمالا حالت شرط رو روی “حداقل یکی” قرار ندادن و شرط برقرار نمیشه -;)

      1. منصور

        ممنون از پاسخگوییتون ببخشید یه سوال دیگه ؟ قسمت اپلود فایل با اینکه براش تعیین کردم فایلهای عکس رو بپذیره ولی جز فایل داک دیگه چیزی نمیپذیره یعنی ممکنه مشکل از چی باشه ؟

  2. rahimi

    سلام
    توضیحاتتون خیلی خوب و کامل هست
    فقط من میخوام بعد از هر shortcode در صورتی که کاربر وارد کرده بود اطلاعاتش رو ، با یه سمیکالون(،) چطور میتونم این کار رو بکنم؟

  3. مهدی

    سلام
    برای ایجاد تایید برای فرم پرداخت
    در تاییده سه تا ایجاد میکنیم
    تایید موفق
    تایید ناموفق
    انصراف
    هالا در هر کدوم چه چیز هایی رو باید در کادر پیام اضافه کنیم که نشون بده
    مثلا پرداخت موفق
    نام نام خانوادگی
    موبایل

    {payment_status}

    {transaction_id}
    باز چیز دیگه ای لازم هست به تظرتون که کاربر لازم داشته باشه ببینه؟
    و همچنین برای تایید ناموفق
    لازمه شماره تراکنش و غیره مثلا تایید موفق اضافه بشه یا در کادر فقط بنویسیم پرداخت ناموفق
    کاربر در پرداخت نا موفق نیاز به شماره تراکنش و غیره داره؟
    انصراف هم توضیح بدید.
    همین موارد در مورد ایجاد اعلان ها هم باید در کادر پیام باشه؟
    با تشکر

    1. گرویتی فرم پارسی
      گرویتی فرم پارسی

      سلام
      میتونید بجاشون فقط از 2 شورت کد {all_fields} و {payment_pack} استفاده کنید که اولی تمام فیلدهایی که کاربر پر کرده رو به صورت جدول و دومی هم اطلاعات تراکنش رو به صورت جدول نشون میده. برای تاییدیه ناموفق هم بله شورت کد {payment_pack} رو بزارید که اگر خطای بانکی باعث شده بود کاربری که پرداخت کرده به صورت ناموفق تبدیل بشه بتونه با کد رهگیری تراکنشش رو پیگیری کنه.
      اعلان هم مانند تاییدیه هست.

  4. مهدی

    مرسی که جواب دادید.
    با گذاشتن شورک کد جداولی
    موقع نمایش تایید بعد درگاه
    جدول یه قسمتش میره سمت چپ و بد نشون میده
    راهی داره جدولی رو درست کنم خوب نشون بده؟
    و یا اگر بخوام همه موارد که تو جدول هست ساده بیاد و لی همه چیز هایی که مشتری بخواد بدونه نمایش داده بشه کدوم ها رو بیارم شورت کدش رو؟

نظرات بسته است. مشاهده اطلاعیه سایت