Я программно выгрузкой блока внутри Magento контроллера администратора как этогоОпределение пути шаблона Magento
`$block = $this->getLayout()->createBlock('core/text')->setText('<script type="text/javascript" ></script>');`
Теперь, вместо SetText, я хотел бы использовать setTemplate метод. Я создал файл temlplate в этом каталоге design/adminhtml/default/default/product/productcrop.phtml
Как его загрузить, т. Е. Что будет аргументом внутри метода setTemplate?
Я пробовал этот путь: -> setTemplate ('adminhtml/product_productcrop.phtml'). Но, похоже, это не работает.
Весь код контроллера:
<?php
class Homeliv_Leadsadmin_Adminhtml_ProductController extends Mage_Adminhtml_Controller_Action {
public function indexAction() {
$this->loadLayout()->_setActiveMenu('leadsadmin/product');
$this->_addContent($this->getLayout()->createBlock('leadsadmin/adminhtml_product'));
$this->renderLayout();
}
public function editAction() {
$product_id = $this->getRequest()->getParam('id');
$full_product = Mage::getModel('catalog/product')->load($product_id);
$productMediaConfig = Mage::getModel('catalog/product_media_config');
//$baseImageUrl = $productMediaConfig->getMediaUrl($full_product->getImage());
//$thumbImageUrl = $productMediaConfig->getMediaUrl($full_product->getThumbnail());
$smallImage = $productMediaConfig->getMediaUrl($full_product->getSmallImage());
$this->loadLayout();
//$this->_title($this->__("Product"));
/* $block = $this->getLayout()->createBlock('core/text')->setText('<script type="text/javascript" src="'.Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB).'media/leadsadmin/product_crop.js'.'"></script>');
$this->_addJs($block);
$this->_addLeft($this->getLayout()
->createBlock('core/text')
->setText('<h1>Image</h1><img src="'.$smallImage.'"/>'));
$block = $this->getLayout()
->createBlock('core/text')
->setText('<h1>Main Block</h1>');
$this->_addContent($block);*/
$block = $this->getLayout()->createBlock('core/template')-> setTemplate('product/productcrop.phtml')->toHtml();
$this->_addContent($block);
//$this->getLayout()->createBlock('leadsadmin/adminhtml_product')->setTemplate('product/productcrop.phtml')->toHtml();
//$this->getLayout()->createBlock('core/text')->setText('<div>ssxsxsx</div>');
$this->renderLayout();
//var_dump(Mage::getSingleton('core/layout')->getUpdate()->getHandles());
//die();
//$this->loadLayout()->_setActiveMenu('leadsadmin/product');
//$this->_addContent($this->getLayout()->createBlock('leadsadmin/adminhtml_product'));
//$this->renderLayout();
}
}
я использовал это, чтобы добавить блок: $ это -> _ addContent ($ блок); Он выдает ошибку: Recoverable Error: аргумент 1, переданный в Mage_Adminhtml_Controller_Action :: _ addContent() должен быть экземпляром Mage_Core_Block_Abstract – androider
, можете ли вы объяснить, что вы пытаетесь достичь, поэтому я могу помочь. –
Я добавил код контроллера в вопрос. Я просто хочу загрузить файл phtml программно – androider