Новый способ оплаты в новой вкладке конфигурации в Magento - PullRequest
0 голосов
/ 23 декабря 2011

Все, что я хочу сделать, это добавить новый пользовательский метод оплаты и сделать его доступным на новой вкладке конфигурации вместо «Способы продажи / оплаты».

Например, я хочу использовать свой метод оплатыв «CompanyName / Method1» в конфигурации администратора вместо группы в «Sales / Payment Methods».

Моя проблема возникает здесь.Я могу настроить в файле system.xml новую вкладку и параметры моего модуля под ней.Но когда я изменяю config.xml, мой способ оплаты больше не отображается на странице chekout.

Когда я изменяю свое имя вкладки, он не отображается при оформлении заказа.Есть идеи?

<default>
        <payment>
            <spos>
                <active>0</active>
                <model>spos/payment</model>
                <order_status>1</order_status>
                <title>SPos</title>
                <payment_action>authorize</payment_action>
                <allowspecific>0</allowspecific>
            </spos>
        </payment>
</default>

Ответы [ 3 ]

0 голосов
/ 26 декабря 2011

Я думаю, вам нужно показать ваши config.xml и system.xml.Я пытался для этого, и мои xmls следующие:

System.xml

<?xml version="1.0"?>
<config>
    <tabs>
        <newmodule translate="label" module="newmodule">
            <label>NewModule</label>
            <sort_order>200</sort_order>
        </newmodule>
    </tabs>
    <sections>
        <newmodule translate="label" module="newmodule">
            <label>NewModule</label>
            <tab>newmodule</tab>
            <frontend_type>text</frontend_type>
            <sort_order>0</sort_order>
            <show_in_default>1</show_in_default>
            <show_in_website>1</show_in_website>
            <show_in_store>1</show_in_store>
            <groups>
                <newmodule translate="label" module="paygate">
                    <label>NewModule Payment</label>
                    <sort_order>670</sort_order>
                    <show_in_default>1</show_in_default>
                    <show_in_website>1</show_in_website>
                    <show_in_store>0</show_in_store>
                    <fields>
                        <active translate="label">
                            <label>Enabled</label>
                            <frontend_type>select</frontend_type>  
                            <source_model>adminhtml/system_config_source_yesno</source_model>
                            <sort_order>1</sort_order>
                            <show_in_default>1</show_in_default>
                            <show_in_website>1</show_in_website>
                            <show_in_store>0</show_in_store>
                        </active>
                        <order_status translate="label">
                            <label>New order status</label>
                            <frontend_type>select</frontend_type>
                            <source_model>adminhtml/system_config_source_order_status_processing</source_model>
                            <sort_order>4</sort_order>
                            <show_in_default>1</show_in_default>
                            <show_in_website>1</show_in_website>
                            <show_in_store>0</show_in_store>
                        </order_status>
                        <title translate="label">
                            <label>Title</label>
                            <frontend_type>text</frontend_type>
                            <sort_order>2</sort_order>
                            <show_in_default>1</show_in_default>
                            <show_in_website>1</show_in_website>
                            <show_in_store>0</show_in_store>
                        </title>
                    </fields>
                </newmodule>
            </groups>
        </newmodule>
    </sections>
</config>  

Config.xml

<?xml version="1.0"?>
<config>
    <modules>
        <NameSpace_NewModule>
            <version>0.1.0</version>
        </NameSpace_NewModule>
    </modules>
    <frontend>
        <routers>
            <newmodule>
                <use>standard</use>
                <args>
                    <module>NameSpace_NewModule</module>
                    <frontName>newmodule</frontName>
                </args>
            </newmodule>
        </routers>
        <layout>
            <updates>
                <newmodule>
                    <file>newmodule.xml</file>
                </newmodule>
            </updates>
        </layout>
    </frontend>
    <admin>
        <routers>
            <newmodule>
                <use>admin</use>
                <args>
                    <module>NameSpace_NewModule</module>
                    <frontName>newmodule</frontName>
                </args>
            </newmodule>
        </routers>
    </admin>
    <adminhtml>
        <menu>
            <newmodule module="newmodule">
                <title>NewModule</title>
                <sort_order>71</sort_order>
                <action>newmodule/adminhtml_newmodule</action>
                <children>
                    <marketing module="newmodule">
                        <title>Marketing</title>
                        <sort_order>0</sort_order>
                        <action>newmodule/adminhtml_newmodule</action>
                    </marketing>                    
                </children>
            </newmodule>
        </menu>
        <acl>
            <resources>
                <all>
                    <title>Allow Everything</title>
                </all>
                <admin>
                    <children>
                        <newmodule>
                            <title>NewModule</title>
                            <sort_order>1</sort_order>
                            <action>newmodule/adminhtml_newmodule</action>
                            <children>
                            <marketing module="newmodule">
                                <title>Marketing</title>
                                <sort_order>0</sort_order>
                                <action>newmodule/adminhtml_newmodule</action>
                            </marketing>                           
                            </children>
                        </newmodule>
                    </children>
                </admin>
            </resources>
        </acl>
        <layout>
            <updates>
                <newmodule>
                    <file>newmodule.xml</file>
                </newmodule>
            </updates>
        </layout>
    </adminhtml>
    <global>
        <fieldsets>
            <sales_convert_quote_payment>
                <newmodule_id>
                    <to_order_payment>*</to_order_payment>
                </newmodule_id>               
                <order_cash_value>
                    <to_order_payment>*</to_order_payment>
                </order_cash_value>
            </sales_convert_quote_payment>
            <sales_convert_order_payment>
                <budget_id>
                    <to_quote_payment>*</to_quote_payment>
                </budget_id>                
                <order_cash_value>
                    <to_quote_payment>*</to_quote_payment>
                </order_cash_value>
            </sales_convert_order_payment>
        </fieldsets>
        <models>
            <newmodule>
                <class>NameSpace_NewModule_Model</class>
                <resourceModel>newmodule_mysql4</resourceModel>
            </newmodule>
            <newmodule_mysql4>
                <class>NameSpace_NewModule_Model_Mysql4</class>
                <entities>
                    <newmodule>
                        <table>newmodule</table>
                    </newmodule>                    
                </entities>
            </newmodule_mysql4>
        </models>
        <resources>
            <newmodule_setup>
                <setup>
                    <module>NameSpace_NewModule</module>
                </setup>
                <connection>
                    <use>core_setup</use>
                </connection>
            </newmodule_setup>
            <newmodule_write>
                <connection>
                    <use>core_write</use>
                </connection>
            </newmodule_write>
            <newmodule_read>
                <connection>
                    <use>core_read</use>
                </connection>
            </newmodule_read>
        </resources>
        <blocks>
            <newmodule>
                <class>NameSpace_NewModule_Block</class>
            </newmodule>
        </blocks>
        <helpers>
            <newmodule>
                <class>NameSpace_NewModule_Helper</class>
            </newmodule>
        </helpers>
    </global>
    <default>
        <payment>
            <newmodule>
                <active>1</active>
                <model>newmodule/payment_newmodule</model>
                <order_status>processing</order_status>
                <title>NewModule Payment</title>
                <payment_action>authorize</payment_action>
            </newmodule>
        </payment>
    </default>
</config>

Надеюсь, это может помочь вам.Проверьте эти xmls и сравните их ..

0 голосов
/ 26 февраля 2012

Вы должны добавить <config_path>payment/[YourGroupName]/[FieldName]</config_path> узел к каждому полю нового платежа, которое находится в разделе новой группы.Таким образом, ваши поля выглядят примерно так в вашем файле system.xml:

...
    <fields>
        <active translate="label">
            <label>Enabled</label>
            <config_path>payment/method1/active</config_path>
            <frontend_type>select</frontend_type>
            <source_model>adminhtml/system_config_source_yesno</source_model>
            <sort_order>10</sort_order>
            <show_in_default>1</show_in_default>
            <show_in_website>1</show_in_website>
            <show_in_store>1</show_in_store>
        </active>
        <title translate="label">
            <label>Title</label>
            <config_path>payment/method1/title</config_path>
            <frontend_type>text</frontend_type>
            <sort_order>15</sort_order>
            <show_in_default>1</show_in_default>
            <show_in_website>0</show_in_website>
            <show_in_store>1</show_in_store>
        </title>
        .
        .
        .
    </fields>
...

Модуль PayPal в Magento является хорошим справочным материалом для проверки, изучения и поиска новых вещей для способов оплаты.

0 голосов
/ 23 декабря 2011

http://alanstorm.com/custom_magento_system_configuration

Эта воля поможет вам.

...