Где находится расположение getChildHTML ('content') для страниц пользовательских категорий в magento? - PullRequest
5 голосов
/ 05 марта 2012

У меня есть клиент, у которого есть magento-сайт, который загружает пользовательские страницы категорий, и на одной из них $ this-> getChildHTML ('content') выдает кучу кода после загрузки страницы.это только на одной странице, и это похоже на сброс тегов закрытия php.

getCurrentCategory()?> getCurrentChildCategories()?> count()):?> getIsActive()): $cur_category=Mage::getModel('catalog/category')->load($_category->getId()); $layer = Mage::getSingleton('catalog/layer'); $layer->setCurrentCategory($cur_category); $catName = $this->getCurrentCategory()->getName(); if($_imageUrl=!$this->getCurrentCategory()->getImageUrl()):?>


getCurrentCategory()->getImageUrl()):?>

getName()?>

setCurrentCategory($_maincategorylisting); ?>

Я не могу найти страницу с ошибкой.Я не знаю, где находится «контент» в getChildHTML.страницы категорий были сделаны на заказ, и не показывает никаких продуктов, только изображение одного из продуктов.Я хотел бы изменить эти страницы, чтобы показать продукты и целый ряд других вещей, но я просто не знаю, где находятся эти пользовательские страницы категорий.Существуют собственные шаблоны для каждой категории, но все они используют один и тот же вызов getChildHTML ('content') ...

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

кстати .... если вы уже могли сказать, я новичок в magento и, вероятно, оставил много важной информации, поэтому, если вы считаете, что мне нужно опубликовать больше информации, пожалуйста, так и скажите.

спасибо заранее!

Ответы [ 2 ]

9 голосов
/ 06 марта 2012

«content» - это имя, данное блоку, которое определено в page.xml как блок core/text_list (Mage_Core_Block_Text_List).Цель этого блока - отобразить любые дочерние блоки, назначенные ему, и он делает это без шаблона.Любой файл макета, а также обновления макета в базе данных (см. Вкладку «Дизайн» любой категории) могут содержать инструкции, которые включены на страницы категорий, и изменить дочерние элементы этого блока.

См. статью базы знаний Алана Шторма наMagentoCommerce.com и в конечном итоге перейдите к его исчерпывающей книге Без излишеств Magento Layout .

Для получения общей информации вы находитесь в хорошей компании в Stack Overflow, и вы также можете положиться на Magento U как ресурс.

1 голос
/ 05 марта 2012

Это зависит от темы, любых расширений и другого пользовательского кода. Обычно getChildHTML('content') загружает обработчик «содержимого» для текущего макета. Это может быть либо непосредственно в catalog.xml, local.xml, либо, если это переопределение расширения, xml расширения. Это также может быть обновление макета в самой категории на сервере.

Используйте инструменты отладки Magento для вывода каждого блока и их местоположения от администратора:

Система -> Конфигурация Измените «Область текущей конфигурации» на представление веб-сайта Продвинутый / Разработчик Панель отладки: «Подсказки к шаблонам пути» и «Добавить имена блоков к подсказкам».

Вы также можете добавить свой IP-адрес в раздел «Ограничения клиента для разработчиков» над ним, чтобы ограничить вывод только вашим собственным IP-адресом. Как только вы сохраните его, вы увидите много красных контуров. Просмотрите страницу с неработающими категориями и найдите имя файла, которое обернуто вокруг неработающего кода.

...