Добавить новую опцию макета страницы Magento


11

Я хотел бы добавить новый макет страницы в Magento, который можно будет выбрать на страницах CMS. Я скопировал 1-column.phtmlкод, немного его адаптировал и изменил на1-column-version2.phtml.

Я хотел бы знать, пожалуйста, как я буду ссылаться на новый файл, чтобы он отображался в параметрах макета страницы CMS .

,

Ответы:


18

Чтобы удовлетворить ваши требования, вам нужно создать расширение - без этого это невозможно.

Файл конфигурации модуля:

Создайте файл конфигурации файла модуля в app/etc/modules/Amit_NewLayout.xml

Код:

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

Определить config.xml

Теперь определите 1-column-version2.phtmlкак шаблон для нового макета в app/code/local/Amit/NewLayout/etc/config.xml

Код:

<?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>

Теперь вы сможете увидеть этот макет в настройках макета страницы CMS.


Без этого поста это невозможно.
jmargolisvt

1

Создайте один модуль и добавьте ниже xml в ваш файл 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>

Зарегистрируйте свой модуль

app/etc/modules/Namespace_CustomLayouts.xml

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

Создайте свой собственный файл шаблона page/1-column-version2.phtml


-3

Добавьте свой код в

app\code\core\Mage\Page\etc

config.xml:

с

 <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>

Вы можете изменить имена, как вы хотите в XML, вы можете поместить любые слова

Затем создайте home.phtml в качестве шаблона в newtheme / newpack / page / или в своей теме по умолчанию


Неразумно изменять файлы ядра.
KiwisTasteGood

Вы никогда не должны напрямую изменять файлы Core. Чтобы уточнить, если бы вы обновили свой экземпляр Magento, вы бы потеряли свои изменения. Вот почему вы должны создать свое собственное расширение и реализовать, как в ответе Амит Бера
JoshCarter
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.