加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – Magento使用产品集合在模板中调用.phtml文件

发布时间:2020-12-13 17:57:47 所属栏目:PHP教程 来源:网络整理
导读:我可以将.phtml文件调用到我的.phtml模板,就像list.phtml一样. ?php echo $this-getLayout()-createBlock('core/template')-setTemplate('goodtest/test.phtml')-toHtml();? 但在test.phtml中,我无法调用$_product值. 例如: ?php $_productCollection=$this
我可以将.phtml文件调用到我的.phtml模板,就像list.phtml一样.
<?php 
  echo $this->getLayout()->createBlock('core/template')->setTemplate('goodtest/test.phtml')->toHtml();
?>

但在test.phtml中,我无法调用$_product值.

例如:

<?php 
$_productCollection=$this->getLoadedProductCollection();
foreach ($_productCollection as $_product): 
?>

作品

<?php echo $_product->getName() ?>

不起作用:

<?php 
      echo $this->getLayout()->createBlock('core/template')->setTemplate('goodtest/test.phtml')->toHtml();
    ?>

在文件中:test.html:<?php echo $_product-> getName()?>.

我是否必须在每个包含的文件中再次加载产品中的完整集合,如何才能在test.phtml中获得$_product值最有效的方法?

有两种选择:

>您可以在foreach循环中每次使用带有id的Mage :: getModel(‘catalog / product’) – > load(< product_id>)加载产品.
>使用以下

echo $this-> getLayout() – > createBlock(‘catalog / product_list’) – > setTemplate(‘goodtest / test.phtml’) – > toHtml();

代替

echo $this-> getLayout() – > createBlock(‘core / template’) – > setTemplate(‘goodtest / test.phtml’) – > toHtml();

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读