Новый пользовательский блок Magento

Я использую Magento версии 1.8.1.0.

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

  • Пространство имен: Crusader
  • Модуль: CLHomePage
  • Тип блока: crusaderhome
  • Класс: Qwerty (на данный момент во время тестирования)
  • Дизайн-пакет: крестоносец
  • Тема: по умолчанию

Это то, что у меня есть до сих пор:

\ Приложение \ и т.д. \ модули \ Crusader_All.xml

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

\ Приложение \ код \ Local \ Crusader \ CLHomePage \ и т.д. \ config.xml

 <?xml version="1.0"?> <config> <modules> <Crusader_CLHomePage> <version>0.0.1</version> </Crusader_CLHomePage> </modules> <global> <blocks> <crusaderhome> <class>Crusader_CLHomePage_Block</class> </crusaderhome> </blocks> </global> </config> 

\ Приложение \ код \ Local \ Crusader \ CLHomePage \ Block \ Qwerty.php

 <?php class Crusader_CLHomePage_Block_Qwerty extends Mage_Core_Block_Template { // Methods (optional) } ?> 

\ Приложение \ дизайн \ интерфейс \ крестоносец \ умолчанию \ расположение \ local.xml

 <?xml version="1.0" ?> <layout> <cms_index_index> <reference name="content"> <block type="core/template" name="homepage" template="crusader/home.phtml"> <block type="crusaderhome/qwerty" name="homeads" as="homeads" template="crusader/homeads.phtml" /> </block> </reference> </cms_index_index> </layout> 

\ Приложение \ дизайн \ интерфейс \ крестоносец \ умолчанию \ шаблон \ крестоносец \ home.phtml

 <div id="home"> <p>Home Wrapper</p> <?php echo $this->getChildHtml('homeads'); ?> </div> 

\ Приложение \ дизайн \ интерфейс \ крестоносец \ умолчанию \ шаблон \ крестоносец \ homeads.phtml

 <p>Adverts</p> 

Теперь, с приведенным выше, моя домашняя страница показывает только «Home Wrapper», поэтому отображается содержимое home.phtml , но не содержимое homeads.phtml .

Если я изменяю тип блока для homeads на core/template , он работает, и я вижу как «Home Wrapper», так и «Adverts». Поэтому я знаю, что проблема связана с ссылкой на мой новый тип блока (так называемый crusaderhome).

Что я здесь делаю неправильно? ..

Related of "Новый пользовательский блок Magento"

Прежде всего

изменить \app\etc\modules\Crusader_All.xml на

\app\etc\modules\Crusader_CLHomePage.xml

используйте cLHomePage (проверьте соглашение об именах. Вы должны использовать строчные буквы, такие как Clhomepage ), скорее crusaderhome в типе блока.

в

 <block type="crusaderhome/qwerty" name="homeads" as="homeads" template="crusader/homeads.phtml" /> 

Я нашел ответ после публикации на веб-сайте обмена Magento:

https://magento.stackexchange.com/questions/18098/magento-new-custom-block-module

Это был компилятор Magento, как только я отключил компилятор, похоже, он работает.

Администратор> Система> Инструменты> Компиляция