Пожалуйста, предложите мне правильный подход, я хочу настроить страницу "EMAIL to Friend" во всплывающем окне, когда пользователь нажимает на кнопку (по электронной почте этот продукт). Включив подсказку шаблона, я обнаружил, что кнопка отображается с
интерфейс / RWD / по умолчанию / шаблон / Каталог / продукта / вид / sharing.phtml
И соответствующий файл макета catalog.xml
(в frontend / rwd / default / layout)
Поэтому я создал local.xml
в той же папке, где catalog.xml
существует, с помощью следующего кода (только то, что я дал test.phtml
вместо sharing.phtml
, просто «Отладка»)
<?xml version="1.0"?>
<layout version="0.1.0">
<default>
<catalog-product-view>
<reference name="content">
<block type="catalog/product_view" name="product.info" template="catalog/product/view.phtml">
<block type="catalog/product_view" name="product.info.sharing" as="sharing" template="catalog/product/view/test.phtml"/>
</block>
</reference>
</catalog-product-view>
</default>
</layout>
Но ничего не происходит, я имею в виду, как я могу изменить (перезаписать) дизайн темы по умолчанию, не изменяя существующие xml
и phtml
файлы?
<reference name="content"><block type="core/template" name="test.block" template="catalog/product/view/test.phtml" /></reference>
прямо под узлом<catalog_product_view>
. и посмотрите, доступно ли содержимое файла test.phtml в нижней части страницы просмотра продуктаЯ постараюсь дать общий ответ.
Как изменить шаблоны
В вашей теме вы можете переопределить любые
phtml
файлы из темы по умолчанию или родительской темы. Скопируйте исходный файлapp/design/frontend/[package]/[theme]/template/[path/to/phtml]
и внесите изменения.Если у вас еще нет специальной темы для проекта, например, потому что вы только что купили тему, обязательно создайте ее на
Он унаследует от
[original-package]/[default]
вас, вам не нужно копировать все по умолчанию, только файлы, в которые нужно внести изменения.Модульные изменения
Альтернативой переопределению
phtml
файла является изменение пути к шаблону. Обычно это можно сделать в макете XML следующим образом:Но это предназначено для использования модулями, которым нужно переключать шаблон, а не для конкретных изменений темы. Новый шаблон должен быть в
base/default
то время.Как использовать local.xml / theme.xml
local.xml
Файл должен находиться в каталоге актуальной темы , которую вы используете, т.е.Несколько
local.xml
файлов в резервной иерархии не учитываются. Первый из них, который можно найти, используется:(при условии иерархии по умолчанию и никакой пользовательской иерархии)
Как внести изменения
Вы должны иметь только изменения в local.xml, но не повторять определения, которые уже есть в исходных XML-файлах. Это также означает, что следует избегать копирования файлов XML из темы по умолчанию, чтобы вносить изменения непосредственно в файлы. Держите
layout
каталог вашей темы в чистоте!Типичными элементами
local.xml
являются<remove>
полное удаление существующих блоков<action method="unsetChild">
и<action method="append">
перемещение блока от одного родителя к другому или вызов любых других методов в существующих блоках для изменения их поведения.Magento 1.9
Начиная с Magento 1.9, лучше всего не использовать
layout/local.xml
эти изменения, ноetc/theme.xml
Источник: https://erfanimani.com/dont-use-local-xml/
источник