روش پرداخت به عنوان افزونه در ناپ کامرس پیاده سازی می شود. توصیه می کنیم قبل از شروع برنامه نویسی روش جدید پرداخت مقاله نحوه نوشتن یک پلاگین برای ناپ کامرس 4.00 را بخوانید. این به شما توضیح می دهد که چه مراحلی برای ایجاد یک افزونه مورد نیاز است.
بنابراین در واقع یک روش پرداخت یک پلاگین معمولی است که یک رابط IPaymentMethod (Nop.Services.Payments namespace) را اجرا می کند. همانطور که قبلا حدس زده اید رابط کاربری IPaymentMethod برای ایجاد پلاگین روش پرداخت استفاده می شود. این شامل برخی از متدهایی است که فقط برای روش های پرداخت مانند ProcessPayment () یا GetAdditionalHandlingFee () استفاده می شود. بنابراین یک پروژه پلاگین پرداخت (کتابخانه کلاس) به راه حل اضافه کنید و شروع کنیم.
اولین کاری که باید انجام دهید اینست که یک کنترلر ایجاد کنید. این کنترل کننده مسئول پاسخ دادن به درخواستهای ایجاد شده در برابر وب سایت ASP.NET MVC است.
سپس شما باید یک کامپوننت نمایه برای نمایش پلاگین در فروشگاه عمومی ایجاد کنید. این کامپوننت نمایه و دیدگاه مناسب تعریف خواهد کرد که چگونه مشتریان شما در هنگام پرداخت، صفحه اطلاعات پرداخت را مشاهده خواهند کرد. ابتدا کلاس View Component ایجاد کنیم. باید در پوشه / Components قرار گیرد. ببینید که چگونه برای پلاگین PayPalStandard انجام می شود:
[ViewComponent(Name = "PaymentPayPalStandard")]
public class PaymentPayPalStandardViewComponent : NopViewComponent
{
public IViewComponentResult Invoke()
return View("~/Plugins/Payments.PayPalStandard/Views/PaymentInfo.cshtml");
}
روش Invoke یک نمایش اطلاعات مربوط به Payment از / Views را از پلاگین خود باز می کند. توجه داشته باشید که ما از کلاس سفارشی NopViewComponent خود به عنوان کلاس پایه به جای ViewComponent ساخته شده استفاده می کنیم.
بعد از ایجاد مشخصات PaymentInfo که اطلاعات پرداخت را نشان می دهد، مجوز دهید. برای پلاگین PayPalStandard این نمایه بسیار ساده است. ما فقط متن ارائه می دهیم که مشتری را به صفحه پرداخت هدایت می کند. اما ممکن است در صورت نیاز یک کامپوننت نمایه پیچیده تر را ایجاد کنید. به عنوان مثال اگر میخواهید اطلاعات مشتریان را در صفحه اطلاعات پرداخت بگیرید، به نظرتان در Plugin PayPal Direct چگونه انجام می شود.
حالا شما باید یک کلاس ایجاد کنید که رابط IPaymentMethod را اجرا کند. این کلاس است که تمام کار واقعی برقراری ارتباط با دروازه پرداخت شما را انجام خواهد داد. هنگامی که کسی یک سفارش ایجاد می کند، روش ProcessPayment یا PostProcessPayment کلاس شما فراخوانی می شود. در اینجا چگونگی تعریف کلاس CheckMoneyOrderPaymentProcessor (روش پرداخت CheckMoneyOrder) است:
public class CheckMoneyOrderPaymentProcessor : BasePlugin, IPaymentMethod
{...
رابط IPaymentMethod دارای چندین متد و مشخصه است که برای پیاده سازی مورد نیاز می باشد.
public override IList<string> ValidatePaymentForm(IFormCollection form)
return new List<string>();
<>· public ProcessPaymentRequest GetPaymentInfo(IFormCollection form)
<>· {
return new ProcessPaymentRequest();
public override string GetConfigurationPageUrl()
return $"{_webHelper.GetStoreLocation()}Admin/PaymentCheckMoneyOrder/Configure";
public void GetPublicViewComponent(out string viewComponentName)
viewComponentName = "CheckMoneyOrder";
امیدوارم با شروع یک روش پرداخت جدید شروع به کار کنید.
طراحی فروشگاه خود را با امکانات بیشمار و قالب اختصاصی به ما بسپارید. نمونه پروژه های اجرا شده ما را ببینید.
ناپ شاپ با برگزاری دوره های آموزشی در دانشگاهها، ارائه راهنمای فارسی، انجمن گفتگو، فیلم های آموشی، وبلاگ، طراحی انواع پلاگین ها و راه اندازی انواع فروشگاه اینترنتی، در توسعه ناپ کامرس در ایران تلاش میکند.