Magento自定义布局仅适用于本地

时间:2014-03-17 20:58:28

标签: xml magento model-view-controller magento-1.7 magento-1.8

运行Magento CE 1.8站点,需要使用自定义页面布局设置一个非常基本的CMS页面,基于1column.phtml布局。我创建了布局,并且能够在本地管理员中选择它,但是在将我的更改推送到远程时,自定义布局不能作为远程站点上的选项,只有我的本地主机。

我已经清除了缓存,删除了远程的会话和缓存dirs,四重检查了所有必要的文件被添加到提交并推送,并注销并重新登录(几次),以确保。还是什么......我无法弄明白!这是Magento中最简单的东西之一,它显然在本地工作,但我找不到本地和远程之间的差异。我知道这可能很容易,但我很难过。我找到了一些答案,但似乎没有任何效果 - 尽管My custom CMS Layout Template in Magento is not loaded会做到但没有骰子。

代码如下,如果它有帮助:

/app/code/local/styleguide/etc/config.xml:

<?xml version="1.0"?>
<config>
  <modules>
    <styleguide>
      <version>0.1.0</version>
    </styleguide>
  </modules>
  <global>
    <page>
      <layouts>
        <style_guide translate="label">
          <label>style_guide</label>
          <template>page/styleguide.phtml</template>
          <layout_handle>style_guide</layout_handle>
        </style_guide>
        <!-- add more layouts here -->
      </layouts>
    </page>
  </global>
</config>

/app/design/frontend/MY_THEME/default/template/page/styleguide.phtml:

<?xml version="1.0"?>
<config>
  <modules>
    <styleguide>
      <version>0.1.0</version>
    </styleguide>
  </modules>
  <global>
    <page>
      <layouts>
        <style_guide translate="label">
          <label>style_guide</label>
          <template>page/styleguide.phtml</template>
          <layout_handle>style_guide</layout_handle>
        </style_guide>
        <!-- add more layouts here -->
      </layouts>
    </page>
  </global>
</config>

/app/etc/modules/styleguide.xml:

<?xml version="1.0"?>
<config>
  <modules>
    <styleguide>
      <active>true</active>
      <codePool>local</codePool>
      <depends>
        <Mage_Page />
      </depends>
    </styleguide>
  </modules>
</config>

1 个答案:

答案 0 :(得分:1)

我认为您的文件夹结构路径存在问题..

如上所述/app/code/local/styleguide/etc/config.xml,您的名称空间路径缺失。通常它必须如下:app/code/local/Namespace/Module/etc/config.xml并且您的模块名称必须以大写字母开头。

但这里是小写字母。而且你的module.xml也是错误的。app/etc/modules/Namespace_Module.xml的module.xml中没有命名空间它必须如下:

<?xml version="1.0"?>
<config>
<modules>
    <Namespace_Home>
    <active>true</active>
    <codePool>local</codePool>
    </Namespace_Home>
</modules>
 </config>

你能先检查所有这些......