Adicionar nova opção de layout de página Magento


11

Eu gostaria de adicionar um novo layout de página no Magento que será uma opção que pode ser selecionada nas páginas do CMS. Copiei o 1-column.phtmlcódigo, adaptei-o levemente e mudei para1-column-version2.phtml.

Gostaria de saber como proceder para referenciar o novo arquivo para que ele apareça nas opções de layout da página do CMS .

.

Respostas:


18

Para atender aos seus requisitos, você precisa criar uma extensão - sem isso, não é possível.

Arquivo de configuração do módulo:

Crie o arquivo de configuração do módulo em app/etc/modules/Amit_NewLayout.xml

Código:

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

Definir config.xml

Agora defina 1-column-version2.phtmlcomo o modelo para o novo layout em app/code/local/Amit/NewLayout/etc/config.xml

Código:

<?xml version="1.0"?> 
<config>
    <modules>
        <Amit_NewLayout>
            <version>0.0.1</version>
        </Amit_NewLayout>
    </modules>
    <global>
        <page>
            <layouts> 
                <new_cms_layout module="page" translate="label">
                    <label>New Cms Layout</label>
                    <template>page/1-column-version2.phtml</template>
                    <layout_handle>lookbook</layout_handle>
                </new_cms_layout> 
            </layouts>
        </page>
    </global>
</config>

Agora, você poderá ver esse layout nas opções de layout da página do CMS.


Sem este post, não é possível.
jmargolisvt

1

Crie um módulo e adicione xml abaixo no seu arquivo config.xml.

app/code/local/Namespace/CustomLayouts/etc/config.xml

<?xml version="1.0"?>
<config>
 <global>
  <page>
   <layouts>
    <custom_static_page_one>
     <label>Custom static page</label>
     <template>page/1-column-version2.phtml</template>
    </custom_static_page_one>
   </layouts>
  </page>
 </global>
</config>

Registre seu módulo

app/etc/modules/Namespace_CustomLayouts.xml

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

Crie seu próprio arquivo de modelo page/1-column-version2.phtml


-3

Adicione seu código em

app\code\core\Mage\Page\etc

config.xml:

com

 <My_one_column_cms module="page" translate="label">
        <label>My One Column</label>
        <template>page/home.phtml</template>
        <layout_handle>My_one_column_cms</layout_handle>
        </My_one_column_cms>

Você pode alterar os nomes conforme seu desejo em xml em u pode colocar qualquer palavra

Em seguida, crie home.phtml como seu modelo em newtheme / newpack / page / ou no seu tema padrão


Imprudente para modificar os arquivos principais.
precisa saber é o seguinte

Você nunca deve alterar diretamente os arquivos principais. Para elaborar, se você atualizasse sua instância do Magento, perderia suas alterações. É por isso que você deve criar seu próprio ramal e implementar como na resposta de Amit Bera
JoshCarter
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.