【问题标题】:magento custom payment method form not showingmagento 自定义付款方式表单未显示
【发布时间】:2012-05-13 02:41:25
【问题描述】:

我编写了一个自定义支付模块。它似乎工作正常,但我无法在结帐过程中显示方法表单。我的意思是:我看到我的方法,我可以选择它,但看不到表格。 我想显示一个带有几个选项但没有呈现表单的选择框。

app\code\local\Neurona\Sistarbanc\Block\Form\sistarbanc.php

class Neurona_Sistarbanc_Block_Form_Sistarbanc extends Mage_Payment_Block_Form
{
  protected function _construct()
   {
    parent::_construct();
    $this->setTemplate('payment/form/sistarbanc.phtml');
   }
....

app\design\frontend\base\default\template\payment\form\sistarbanc.phtml中的表单

任何帮助将不胜感激!

编辑

所以,它似乎在默认的 ckeckout 过程中工作,但不是在 onestepcheckout 中

编辑 2

我发现在 onestepheckout 中,这是呈现付款方式表单的方式:

<?php if ($html = $this->getPaymentMethodFormHtml($_method)): ?>
  <dd id="container_payment_method_<?php echo $_code; ?>" class="payment-method" <?php if(!$this->getSelectedMethodCode()==$_code || !($hide_nonfree_methods && $_code == 'free')): ?> style="display:none"<?php endif; ?>>
<?php echo $html; ?>
</dd>

所以,对于我的方法$this-&gt;getPaymentMethodFormHtml($_method)FALSE。 ¿为什么?

【问题讨论】:

  • 你有没有想过这个问题?有同样的问题,似乎无法让表单呈现。

标签: magento magento-1.4 payment checkout


【解决方案1】:

您的模板文件名为Sisterbanc.phtml,但您的块将尝试加载sisterbanc.phtml(大写“s”与小写“s”)。

【讨论】:

  • 如果日志记录被激活,这也应该在 /var/log/system.log 中显示为缺少模板文件
  • 对不起,这是我帖子中的错字。文件名和声明都是小写的。日志中没有任何内容
【解决方案2】:

也许您需要在 Model/Payment.php 中添加这一行。

protected $_formBlockType = "sistarbanc/form/sistarbanc"

我不知道为什么。我对比了其他支付模块的代码,得到了这个。

【讨论】:

    猜你喜欢
    • 2017-04-27
    • 1970-01-01
    • 1970-01-01
    • 2013-09-04
    • 2018-10-20
    • 1970-01-01
    • 2018-10-29
    • 2012-08-19
    • 1970-01-01
    相关资源
    最近更新 更多