Установить параметр PayPal CBT в Magento - PullRequest
0 голосов
/ 21 октября 2011

Я хотел бы настроить кнопку возврата в PayPal, и я обнаружил, что мне нужно установить параметр CBT в запросе с текстом кнопки, но я не могу найти, как это сделать в Magento (версия 1.4.11).

Можете ли вы помочь мне, пожалуйста? Спасибо

Ответы [ 2 ]

0 голосов
/ 03 марта 2014

Чтобы добавить настраиваемое поле в стандарт Paypal, выполните следующие действия:

ПРИМЕЧАНИЕ. Переопределите перечисленные ниже файлы в локальном каталоге и внесите изменения.Упомянутые основные файлы указаны только для пути

1) Откройте приложение / код / ​​core / Mage / Paypal / модель / Api / Standard.php и защищено $ _globalMap добавьте ваше поле после 'notify_url'

'cbt'    => 'cbt',

В том же файле в protected $ _commonRequestFields добавьте после 'notify_url'

'cbt'

2) Откройте app / code / core / Mage / Paypal / Model / Standard.php и в публичную функцию getStandardCheckoutFormFields () add

$api->setOrderId($orderIncrementId)
            ->setCurrencyCode($order->getBaseCurrencyCode())
            //->setPaymentAction()
            ->setOrder($order)
            ->setNotifyUrl(Mage::getUrl('paypal/ipn/'))
            ->setReturnUrl(Mage::getUrl('paypal/standard/success'))
            ->setCbt('your_cbt_value') // set your value here
            ->setCancelUrl(Mage::getUrl('paypal/standard/cancel'));

Это приведет ккод формы ниже

<input id="cbt" name="cbt" value="your_cbt_value" type="hidden"/>
0 голосов
/ 21 октября 2011

Я сам нашел ответ в этом файле

Приложение / код / ​​ядро ​​/ Mage / Paypal / Block / Standard / redirect.php

после этого цикла:

foreach ($standard->getStandardCheckoutFormFields() as $field=>$value) {
    $form->addField($field, 'hidden', array('name'=>$field, 'value'=>$value));
}

Я добавил эту строку:

$form->addField("cbt", "hidden", array('name'=>'cbt', 'value' => 'YOUR MESSAGE'));

Надеюсь, это поможет

...