Изменение процесса оформления заказа в Prestashop 1.5

Один из наших клиентов разработал платежный шлюз, аналогичный PayPal. Он хочет модуль для Prestashop, чтобы клиенты могли платить через него.

Он хочет изменить исходный процесс оформления заказа. Например, если пользователь вводит конкретный почтовый индекс, единственным доступным способом оплаты должен быть его платежный шлюз. Является ли это возможным? Я точно не знаю, разрешено ли это API Prestashop или даже возможно ли это сделать.

Заранее спасибо!


person Rubén Jiménez    schedule 20.03.2014    source источник


Ответы (2)


Да, это возможно. Вам просто нужно создать специальный платежный модуль с хорошим хуком.

person Maxime NGOE    schedule 20.03.2014
comment
Это план. Но я не был уверен в изменении этой части процесса оформления заказа. Большое спасибо! - person Rubén Jiménez; 20.03.2014

Лучшим решением может быть создание собственного платежного модуля. Вы можете легко расширить класс PaymentModule и создать свой собственный с собственной логикой.

Создать собственный модуль
см. официальная документация платежного модуля

Когда вы расширяете PaymentModule, вы наследуете все от родительского класса, поэтому вы можете добавлять свои новые методы или переопределять унаследованные.
К счастью, этот абстрактный класс не имеет абстрактных методов, это означает, что просто расширив его, вы получите все предварительно встроенное базовое платежное поведение.

Источник модуля PaymentModule

Хуки
В официальной документации по созданию платежного модуля есть упоминание о создании некоторых хуков:

  • оплата: для отображения способа оплаты.
  • paymentReturn: для отображения подтверждения платежа.

сделать эти хуки очень просто, просто определите внутри своих пользовательских методов класса оплаты с именами hookPayment и hookPaymentReturn.

Крючки в Prestashop

Другие полезные ссылки
Вы также можете ознакомиться с некоторыми известными платежными модулями, такими как Paypal, чтобы лучше понять, как они работают, и немного подумать о своем модуле.

Исходный код модуля Prestashop Paypal

person nik.longstone    schedule 15.03.2015
comment
Я уже понял, спасибо за помощь. но теперь все мои функции jquery внезапно исчезли, основной файл jquery связан. любая помощь была бы замечательной. - person devst3r; 16.03.2015
comment
извините, я не понимаю, потому что ваши функции jquery исчезли, какие функции у вас были? Разве вы не можете взломать шаблон и снова вставить его? - person nik.longstone; 17.03.2015
comment
я сделал много вещей.. я думаю, что это какая-то конфликтная ошибка... некоторые операции js работают, но некоторые другие не отвечают. firebug показывает TypeError: $(...).carousel не является функцией - person devst3r; 17.03.2015
comment
возможно, Jcarousel использует Jquery, поэтому иногда, если у вас есть другие плагины, между ними могут быть некоторые конфликты. Попробуйте удалить со страницы плагины один за другим, чтобы увидеть, кто вызывает проблему - person nik.longstone; 17.03.2015
comment
Спасибо за помощь. в любом случае js все еще проблема ... является ли prestashop MVC? я вообще не мог понять поток кода... это очень сложно выучить.. - person devst3r; 19.03.2015
comment
Да, соответствует дизайну MVC, ознакомьтесь с документацией - person nik.longstone; 23.03.2015