На моей начальной странице я хочу добавить новый блок. Поэтому я добавил его в CMS, какmagento - изготовленный на заказ блок не признан
<div>{{block type="productview/productview" name="productview_productview" template="productview/productview.phtml"}}</div>
Должно быть сообщение об ошибке в определенном блочном коде. потому что если я изменю тип от productview/productview
до core/template
. шаблон будет вызван.
Это мой конфигурационный файл плагина (в [magento]/app/code/local/AAA/Productview/etc/config.xml
)
<?xml version="1.0"?>
<config>
<modules>
<AAA_Productview>
<version>1.0</version>
</AAA_Productview>
</modules>
<global>
<blocks>
<productview>
<class>AAA_Productview_Block</class>
</productview>
</blocks>
</global>
</config>
Это блок (в [magento]/app/code/local/AAA/Productview/Block/Productview.php
)
<?php
class AAA_Productview_Block_Productview extends Mage_Core_Block_Template {
public function getRecentProducts() {
Mage::log('test');
$arr_products = array();
$products = Mage::getModel("catalog/product")
->getCollection()
->addAttributeToSelect('*')
->setOrder('entity_id', 'DESC')
->setPageSize(5);
foreach ($products as $product) {
$arr_products[] = array(
'id' => $product->getId(),
'name' => $product->getName(),
'url' => $product->getProductUrl(),
);
}
return $arr_products;
}
}
EDIT1:
вот мой файл шаблона:
<?php
$products = $this->getRecentProducts();
?>
<div id="product_list">
<h1>Recent Products</h1>
<?php if (is_array($products) && count($products)) { ?>
<?php foreach($products as $product) { ?>
<div>
<a href="<?php echo $product['url'] ?>"><?php echo $product['name'] ?></a>
</div>
<?php } ?>
<?php } ?>
</div>
Любая идея, что я делаю неправильно?
Я удалил файл модели и добавил его в файл блока. но функция никогда не вызывается. – Safari
вы должны добавить код ниже в блоке файла: getCollection() -> addAttributeToSelect ('*') -> SetOrder ('ENTITY_ID', 'DESC') -> setPageSize (5); return $ products; } } Надеюсь, этот код вам поможет. Спасибо –
Я добавил этот код, но я получаю 'Undefined variable: this' в файле шаблона – Safari