Magento мое расположение учетной записи проблема XML

Набор max_allowed_packet к тому же (или больше), чем, чем это было при дампе его с mysqldump. Если Вы не можете сделать этого, сделайте дамп снова с меньшим значением.

таким образом, принимая Вас вывел его с mysqldump. При использовании некоторого другого инструмента Вы самостоятельно.

9
задан Remy 8 July 2009 в 09:32
поделиться

2 ответа

Перво-наперво. Убедитесь, что вы очистили кеш приложения Magento. Весь XML макета кэшируется Magento, поэтому добавления нового файла в него недостаточно для запуска каких-либо изменений.

Похоже, ваш левый столбец не отображается. Вот несколько возможных причин для этого

  1. Ваш корневой шаблон настроен на что-то иное, чем левый макет с двумя столбцами

  2. Тег внедряется в макет где-то, перекрывая левый столбец

  3. Ваш «левый» блок переопределяется, поэтому в нем нет дочерних блоков, необходимых для правильной рендеринга

Итак, шаг 1 - выяснить, какой из трех это. Поместите произвольный, но заметный текст во все ваши файлы php / phtml (я предпочитаю что-то вроде

one

,

two

, и т.д.), чтобы вы могли определить, какие файлы на самом деле загружаются.

В

System->Configuration->Developer->Debug->Template Path Hints

есть также параметр отладки шаблона, который делает нечто подобное. Если вы хотите использовать это, вам необходимо перейти к конкретной области конфигурации (вы не можете установить ее по умолчанию)

Хотя выполнение любого из этих действий не будет указывать на прямую проблему, они будут (надеюсь) позволяют исключить отдельные причины.

При раскладке нужно помнить о одном важном моменте. Имена этих файлов XML произвольны. Макеты работают по принципу , XML макета объединен в один гигантский XML-файл. Затем для каждого запроса этот большой XML-файл уменьшается в зависимости от того, что «обрабатывает» запрос страницы. Дескриптор - это что-то вроде или . Другими словами, что-то в любом из ваших других файлов макета может вызывать проблемы на странице оформления заказа, не только вещи в customer.xml.

Также возможно, что на сайте Magento, с которым вы работаете, есть контроллер или два переопределенных, которые изменят дескрипторы макета, которые Magento ищет с любым запросом страницы.

Дело в том, что есть ряд вещей, которые могут быть причиной этого, и нам нужно заглянуть внутрь Magento. Установите этот модуль в свою среду разработки (я работаю над экспериментальной отладкой)

http://alanstorm.com/2005/projects/Layoutviewer.tar.gz

Когда он у вас установлен и работает, загрузите страницу в вашем магазине со следующей строкой запроса

http://magento.example.com/customer/account/?showLayout=handles

. Она отобразит дескрипторы, которые magento использует по любому запросу. Вы должны увидеть список чего-то вроде

  1. default
  2. STORE_bare_us
  3. THEME_ \ frontend_default_default
  4. customer_account_index
  5. customer_logged_in

Если номер 4 отличается (название компании_имя модуля_customer_account_index) контроллер для этого запроса. В этом случае вы захотите найти теги в ваших макетах внутри , которые могут переопределять то, что вы хотите сделать.

Затем загрузите Magento URL со следующей строкой запроса

http://magento.example.com/customer/account/?showLayout=page

. Вы должны увидеть XML-файл, отображаемый в браузере. Это ваш XML-код окончательного макета. Найдите тег (скорее всего, с именем root) с установленным атрибутом вывода

<block type="page/html" name="root" output="toHtml" template="page/2columns-left.phtml">

Атрибут output означает, что это шаблон, с которого Magento начнет рендеринг. Если это не t ваша двухколоночная компоновка, вы ближе к решению своей проблемы.

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

<block type="core/text_list" name="left" as="left" ignore="1"/>

Если у него есть атрибут игнорирования, вероятно, будет соответствующий тег

<remove name="left"/>

где-нибудь в вашем макете. Вы захотите удалить это.

Также убедитесь, что у вашего корневого блока действительно есть дочерний блок с оставленным именем.

<block type="page/html" name="root" output="toHtml" ... >
    ...
    <block type="core/text_list" name="left" as "left" />
    ...
</block>

Наконец, это скорее проверка работоспособности.

http://magento.example.com/checkout/cart/?showLayout=package

Указание «package» в параметре строки запроса showLayout покажет вам весь макет пакета. Это все ваши файлы layout.xml, объединенные в один. Вы можете использовать это, чтобы убедиться, что magento знает о XML, который вы добавляете (кеш), и чтобы убедиться, что вы редактируете правильные файлы.

19
ответ дан 4 December 2019 в 10:05
поделиться

В ответ dolu (для всех остальных, у кого есть эта проблема), если вы поместите модуль Алана в app/code/community, вам нужно отредактировать app/etc/modules/Alanstormdotcom_Layoutviewer.xml, чтобы использовать "community" codePool. По умолчанию модуль ожидает установки в app/code/local (по крайней мере, версия, связанная с ответом Алана здесь).

2
ответ дан 4 December 2019 в 10:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: