ПредишенСледващото

nopCommerce - е с отворен код на двигателя написани на ASP.NET MVC 3 за електронна търговия. Приставки се използват за удължаване функционалност nopCommerce. В nopCommerce Съществуват няколко вида на плъгини. Например, доставчикът на платежна модул изчисляване на данъци услуга, доставчикът се изчисли стойността на доставката на стоки, както и много други. nopCommerce се разпространява с няколко съществуващи плъгини, които можете да и двете работни примери за развитието sovih плъгини. Между другото, можете да намерите разнообразие от различни плъгини на официалния уебсайт nopCommerce. Ако Необходимата приставка не можете да намерите, в тази статия ще научите как да се напише плъгин.

Първото нещо, което трябва да направите е да добавите нов проект Class Library до главния solyushenov. Добрите обноски е да се запазят всички плъгините в папка \ Plugins в основата на решение (да не се бърка с подпапка \ Plugins, който се поставя в папка вътре в сайта \ Nop.Web и се използва за вече разработени и компилиран плъгини).

Създаване на приставка за nopcommerce

Добро име за плъгина ще "Nop.Plugin ..", където - е типът на приставката си (например, "Плащане"), и - име на плъгин (например, "Authorize.NET"). Например, модулът за плащане за Authorize.NET система ще има следния името "Nop.Plugin.Payment.AuthorizeNet"

След като добавя плъгин проекта (Class Library) е необходимо да се създаде правилната изходна пътека. Задайте го ".. \ .. \ Представяне \ Nop.Web \ Plugins \".. Например, посочените по-горе плащане модул authorize.net начина, по който това е зададено на ".. \ .. \ Представяне \ Nop.Web \ Plugins \ Payments.AuthorizeNet". След като това бъде направено, след монтажа на асоциативен (DLL) ще състави тя автоматично се копира в папка \ презентацията \ Nop.Web \ Plugins \, която се използва за вече разположени плъгини.

Създаване на приставка за nopcommerce

  1. В Visual Studio приставка проект от контекстното меню изберете Properties.
  2. Изберете раздела Build.
  3. Щракнете върху бутона Browse в непосредствена близост до пътя за изход и изберете желаната папка.

Тези стъпки трябва да бъдат направени за всички от съществуването на конфигурацията на IDE ( "Debug" и "Release").

Следващата стъпка е да се създаде Description.txt файл, необходим за всяка приставка. Този файл съдържа мета-информация, описваща си плъгин. Можете просто да копирате този файл от всеки съществуващ плъгин и да я промените да отговарят на вашите изисквания. Например, тук е как да се погледне този плъгин файл за Authorize.NET система за плащане:

Създаване на приставка за nopcommerce

  • И последната стъпка, необходима за да се създаде приставка ще добави един клас, който реализира интерфейс IPlugin (имена prostanstvo Nop.Core.Plugins). Между другото, в nopCommerce BasePlugin вече имаме клас, който реализира този интерфейс и ви позволява да се избегне ненужното повторение на код, така че не се колебайте да наследи от него. В nopCommerce също има няколко специфични интерфейси наследени от IPlugin. Например, IPaymentMethod интерфейс се използва за създаване на модула за плащане. Той съдържа няколко техники, които се използват само в методите за плащане, например ProcessPayment (). Ние можем да намерим описание на тези интерфейси по-долу:
    • IExternalAuthenticationMethod. Използва се за създаване на външни методи за удостоверяване, като Facebook, Twitter, OpenID, и други подобни.
    • IWidgetPlugin. Тя ви позволява да създавате джаджи. Widgets са показани и разнообразни части на вашия сайт. Например, можете да създадете джаджа "чат на живо", който ще бъде показан в лявата колона на сайта си.
    • IExchangeRateProvider. Той се използва за получаване на проценти.
    • IDiscountRequirementRule. Той се използва за създаване на различни искания за отстъпки. Например, купувачът трябва първо да си купите opredelnie стоки за отстъпка става активен.
    • ISMSProvider. SMS плъгин ви позволява да изпращате SMS текстови съобщения за събития, като например даването на поръчката.
    • IPaymentMethod. Използва се за създаване на плъгини и плащане, които получават плащания.
    • IPromotionFeed. Този тип плъгини използва за генериране на ценови листи и други списъци с продукти за различни цени и каталози сравнение на продукти за услуги. Например, за Froogle (Google Търсене на продукти), или PriceGrabber
    • IShippingRateComputationMethod. Разходите за изпълнение на изчисление и начини за доставка на стоката (например, UPS, UPS, FedEx).
    • ITaxProvider. Използва се за изчисляване на данъчните ставки.
    1. Ако вашият плъгин не принадлежи към едно, а не на видовете, описани по-горе, се използва IMiscPlugin интерфейс.
    2. Важно. След всяка промяна в изходния код на плъг-ин и пред своя компилация, е нужно основно почистване на решение, тъй като някои файлове могат да останат кеширана среда за разработка.

    Сега можете да видите новосъздадения приставката администраторски панел (меню Configuration> Plugins). Но както вече разбрах, приставката ни все още не може да направи нищо. Той дори не разполага с polzovatelkoy интерфейс (страница), за да го изправи. Нека създадем такава страница. За да направите това, което трябва да се създаде модел контролер и представителство.

    1. Контролерите са отговорни за обработка на заявки. Всяка страница откритие на сайта съответства kontretnomu контролер и метод. Тя следи приноса на потребителите и използва модела и оглед на прилагането на необходимата реакция.
    2. Гледката съдържа HTML код, който е отговорен за информационния дисплей (визуализация).
    3. Модел - е данните.

    Повече за MVC можете да намерите тук.

    1. Създаване на модел. Добави папката Модели на проекта, след което добавете плъг-ин модел клас, който отговаря на вашия Требон.
    2. Създаване на изглед. Добавяне на папка в Преглед плъгин проект. Тогава подпапка, където - е името на вашия плъгин. Накрая cshtml представителство файл. Важното е, че този файл трябва да бъде отбелязан като Embedded ресурс.
    3. Създаване на контролера. Контрольори Добавяне на папка към проекта и контакти самия клас на контролера. Добрите маниери ще наричат ​​това Controller.cs файл (например, PaymentAuthorizeNetController.cs). Сега добавете метода на Configure (), тя се подготвят в модела и го предаде на мнение, наречена "Nop.Plugin ... Views..Configure" (това е начин вградени ресурс, който сме създали в предишната стъпка). За да разберем по-добре как да се приложи на контролера, можете да погледнете в изпълнението на PaymentAuthorizeNetController в модула за плащане за Authorize.NET.

    Съвет 1. Копирайте web.config файл от всеки съществуващ плъгин за добавяне на поддръжка за IntelliSense при работа с идеи.

    Съвет 3. Ако искате да ограничите достъпа до определени методи приставката за администратори само, добавете атрибут на съответния метод [AdminAuthorize]

    Ето, например, изглежда като проект щепсел Authorize.NET, което често сме посочено по-рано.

    Създаване на приставка за nopcommerce

    Сега трябва да се регистрирате пътеки () ни плъгин. Те са отговорни за спазването на исканата потребителското страницата (URL) и методите на съществуващите контролери. За повече информация за маршрутите, по които може да намерите тук.

  • В някои от горните връзки (например, IPaymentMethod или IMiscPlugin) е метод GetConfigurationRoute, който трябва да се върне маршрут (път) на страницата, на която е конфигурирана приставката. От nopCommerce знам кой метод контролер е отговорен за създаването на приставката. Ако настройката не е задължително, просто се върнете към този метод, нула. Например,

    След тези стъпки ще се реализира и плъгина ще бъде инсталиран в административния панел (Configuration> Plug-in), ще видите връзка към страницата с конфигурацията на приставката.

    Тази стъпка не е задължителна и може да се пропуснат. Някои от приставките са необходими допълнителни стъпки по време на инсталацията, като добавянето на нови местни ресурси. Ако вие също искате да добавите някои данни по време на инсталацията, отворете си клас, който реализира IPlugin (и вероятно BasePlugin) и предефиниране (Отмяна) от следните методи

    1. Инсталиране. Този метод се нарича време на инсталацията. Тук можете да добавяте нови местни ресурси, за да спаси някоя от настройките или да добавите нова таблица в базата данни (ако е необходимо).
    2. Деинсталиране. Този метод се нарича време на отстраняване на тапа.

    Важно. Ако замените един от тези методи, или в някои случаи, не се скрие в основата на изпълнението. Така например, отмяната Инсталирайте все още трябва да се обадя на метода на база base.Install ().

    Ето един пример как да се погледне Инсталирайте метод на плащане AuthorizeNet модула:

    Съвет. Списък с всички инсталирани плъгини може да бъде намерена във файла \ App_Data \ InstalledPlugins.txt, която е създадена по време на инсталацията nopCommerce.

    Някои от приставките, може да остарее и не работят с най-новата версия на nopCommerce. Ако имате някакви проблеми с който и да е плъг-ин след обновяване на nopCommerce до по-нова версия, моля посетете официалния сайт. да се научат да не излезе, ако актуализирана версия на плъгина. Ако не можете да намерите приставка за новата версия, в повечето случаи (ако API не се е променило) prolema решен просто чрез отваряне на файл и да актуализира поле Description.txt SupportedVersions.

    Свързани статии

  • Подкрепете проекта - споделете линка, благодаря!