Додати опцію макета сторінки 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.