ایجاد یک روش پرداخت سفارشی در اپن کارت : قسمت دوم

تاریخ : ۱۵ بهمن ۱۳۹۴ | دسته بندی : اپن کارت | برچسب ها : ,,

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

دراین مقاله آموزشی ، قسمت back-end روش سفارشی و نحوه فهرست بندی روش پرداخت سفارشی تان همراه با سایر روش های پرداخت را بررسی می کنیم . علاوه بر این ، چگونگی ایجاد فرم پیکربندی برای روش پرداخت سفارشی تان را هم بررسی می کنیم .

 فرض می کنیم که نام روش سفارشی مان ” custom ” است . برای نصب چیرهای مورد نیاز ، حداقل باید سه فایل ایجاد کنید . حال همین را به تفصیل بررسی می کنیم .

نصب کنترلر

دراینجا فایل کنترلر را در admin/controller/payment/custom.php ایجاد کنید . محتویات زیر را در فایل کنترلر custom.php که تازه ایجاد کردیم جایگذاری کنید . کار این فایل نمایش فرم پیکربندی back-end از طریق فراخوانی فایل view مناسب و همزمان ذخیره مقادیر post فرم در پایگاه داده هاست .

همان طور که می توانید ببینید ، نام کلاس از قراردادهای نامگذاری اپن کارت پیروی می کند . حال با هر بخش آشنا می شویم .

ما در ابتدای روش index فایل زبانی را بارگذاری کرده و مقدار تگ <title> را تنظیم می کنیم .

در بخش بعد ، فایل مدل setting.php را بارگذاری می کنیم که روش هایی را برای ذخیره مقدارهای post در پایگاه داده ها را برایمان فراهم می کنند . علاوه براین ، بررسی می کنیم که اگر مقدارهای post دردسترس باشند ، آن ها را در پایگاه داده ها ذخیره می کنیم .

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

سپس متغیر ” action ” را نصب کرده ایم تا مطمئن شویم که فرم در زمان ارسال به روش ” index ” مان تحویل داده شده است . و به همین روش ، کاربر در صورتی که بر روی دکمه ” Cancel ” کلیک کند به فهرست روش های پرداخت بازگردانی می شود .

علاوه براین ، کدهایی وجود دارند که مقدارهای پیش فرض فایل های فرم پیکربندی را یا در حالت add یا edit پر می کنند .

در بخش بعد ، مقدارهای وضعیت سفارش متفاوت که در دسترس هستند را بارگذاری می کنیم که برای منوی پایین افتادنی در فرم پیکربندی فیلد Order Ststus به کار می روند .

در پایان ، فایل قالب سفارشی custom.tpl را تخصیص داده و view را نمایش می دهیم .

این روند نصب فایل کنترلر است .

فایل های زبانی و قالب

در اینجا کارمان با فایل کنترلر تمام شده است ، حال بیایید فایل های زبان و قالب را ایجاد کنیم . جلوتر رفته و فایل زبانی را در admin/language/english/payment/custom.php  ایجاد کنید . مطمئن شوید که فایل زبانی تان به کدی که در پایین و در مثال custom.php فراهم کرده ایم شبیه باشد .

همان طور که می بینید ، متغیرهای زبانی را که پیشتر در فایل کنترلر به کاررفته اند ، نصب کرده ایم . این کاری بسیار ساده است .

حال فایل view را ایجاد می کنیم . جلوتر رفته و فایل قالب  را در admin/view/template/payment/custom.tpl ایجاد کنید . محتوای زیر را در فایل قالب custom.tpl که به تازگی ایجاد کرده ایم ، جایگذاری کنید .

یادگیری این هم باید آسان باشد : هدف این فایل قالب فراهم کردن فرم پیکربندی برای روش پرداخت سفارشی مااست و از متغیرهایی استفاده می کند که پیشتر در فایل کنترلر نصب کرده ایم .

ظاهر آن

نصب فایل ها تمام شده است . حال زمان آن است که کمی جلوتر برویم و همه چیز را در عمل ببینیم . به بخش admin  در OpenCrt و از آنجا به مسیر Extensions > Payment بروید . اکنون باید ببینید که روش سفارشی مان درست در زیر Cash On Delivery فهرست بندی شده است .

Custom Payment Method Listed in the Back-End

روی لینک Install کلیک کنید تا روش پرداخت سفارشی مان نصب شود . پس از نصب ، لینک Edit را باید ببینید که فرم پیکربندی را باز می کند . روی لینک Edit کلیک کنید .

Custom Payment Method Configuration Form

بنابراین ، این همان فرم پیکربندی است که این همه کار سخت را برایش انجام داده ایم ! همان طور که می توانید ببینید ، ما فیلدهای اصلی Order Status و Status را فراهم کرده ایم . علاوه براین ، نشان داده ایم که چگونه می توانید پارمترهای سفارشی را از طریق نصب Parameter One و Parameter Two فراهم کنید .

حال می توانید فرم را پر کنید و با کلیک بر روی دکمه Save آن را ذخیره کنید . ما کد مربوط به آن را در روش index کنترلرمان نصب کرده ایم ، بنابراین ، باید به خوبی کار کند . و بله ! اگر می خواهید روشتان در front-end در دسترس باشد ، فراموش نکنید که آن را در وضعیت Enabled قرار دهید .

حسن موحد

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

ارسال نظر