我的自定义Magento扩展程序获得了404页面找不到错误

时间:2012-12-16 02:53:36

标签: magento module http-status-code-404 block adminhtml

首先让我说我已禁用并清除缓存并退出并重新登录。但是,我仍然收到此错误。

其次,让我解释一下我要做的事情。顺便说一句,这是我的第一个扩展构建:)我只是想构建一个扩展,如果它被启用它将覆盖原始的cart / shipping.phtml文件与我自己的模板文件..

我可以在管理员配置下的左侧边栏中看到我的扩展程序。但是,当我点击我的扩展程序以提取允许您禁用或启用它的常规选项卡时,我找不到可怕的404页面。你能看看我的代码,让我知道我做错了什么吗?感谢所有帮助的人!

以下是我的所有文件:)

等/ config.xml中

<?xml version="1.0"?>
<config>    
<modules>
<Beckin_DropDownShipping><version>1.0.0</version></Beckin_DropDownShipping>
    </modules>

<global>
            <blocks>
                 <dropdownshipping>
                      <class>Beckin_DropDownShipping_Block</class>
                 </dropdownshipping>
            </blocks>

    <helpers>
         <dropdownshipping>
          <class>Beckin_DropDownShipping_Helper</class>
         </dropdownshipping>
    </helpers>      
</global>

 <frontend>
    <layout>
        <updates>
            <beckin>
                <file><!-- beckin_dropdownshipping.xml --></file>
            </beckin>
        </updates>
    </layout>
    <routers>
        <dropdownshipping>
            <use>standard</use>
            <args>
                <module>Beckin_DropDownShipping</module>
                <frontName>dropdownshipping</frontName>
            </args>
        </dropdownshipping>
    </routers>  
 </frontend>


 <adminhtml>
    <acl>
        <resources>
            <admin>
                <children>
                    <system>
                        <children>
                            <config>
                                <children>
                                    <dropdownshipping_options>
                                        <title>Beckin Drop Down Shipping Extension</title>
                                    </dropdownshipping_options>
                                </children>
                            </config>
                        </children>
                    </system>
                </children>
            </admin>
        </resources>
    </acl>
</adminhtml>

</config>

等/的system.xml

<?xml version="1.0"?>
<config>
<tabs>
    <beckin translate="label">
        <label>Beckin Extensions</label>
        <sort_order>100</sort_order>
    </beckin>
</tabs> 
<sections>  
            <dropdownshipping translate="label">
        <label>Drop Down Shipping</label>
        <tab>beckin</tab>
        <frontend_type>text</frontend_type>
        <sort_order>1000</sort_order>
        <show_in_default>1</show_in_default>
        <show_in_website>1</show_in_website>
        <show_in_store>1</show_in_store>


            <groups>            

                <settings translate="label">
                <label>Settings</label>
                <frontend_type>text</frontend_type>
                <sort_order>1</sort_order>
                <show_in_default>1</show_in_default>
                <show_in_website>1</show_in_website>
                <show_in_store>1</show_in_store>       
            <fields>
                <enable translate="label">
                <label>Enable</label>
                <comment>
                <![CDATA[Enable or Disable this extension.]]>
                </comment>
                <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>1</show_in_store>                    
                </enable>           
            </fields>

                </settings>
            </groups>
        </dropdownshipping>
</sections>     
</config>

助手/ Data.php

<?php
class Beckin_DropDownShipping_Helper_Data extends Mage_Core_Helper_Abstract
{   

}

块/车/ Shipping.php

<?php

class Beckin_DropDownShipping_Block_Cart_Shipping extends Mage_Checkout_Block_Cart_Shipping
{

protected function _construct()       
    if(Mage::getStoreConfig('dropdownshipping/general/enable', Mage::app()->getStore()->getId())
    {
    $this->setTemplate('Beckin/dropdownshipping/drop_down_shipping.phtml');
    }

}

2 个答案:

答案 0 :(得分:5)

在配置文件中,acl部分: 变化

<dropdownshipping_options>
    <title>Beckin Drop Down Shipping Extension</title>
</dropdownshipping_options>

<dropdownshipping>
    <title>Beckin Drop Down Shipping Extension</title>
</dropdownshipping>

答案 1 :(得分:0)

我也遇到了404错误的问题,最终帮助我解决问题的答案就在这里:https://stackoverflow.com/a/6426041/3424147

在关注blog post的链接并阅读一些评论之后,我找到了一个谈到手动清除会话数据的人。事实证明,对我来说,退出并重新登录并不足以更新会话中的ACL数据,但在我从var/session手动清除会话文件后,我的新管理员配置菜单部分开始工作(不再404错误)。