将变量传递给 Magento 中的模板 .phtml 块
Pass a variable to a template .phtml block in Magento
这段代码写在market.phtml
<?php echo $this->getLayout()->createBlock('core/template')->setData('vendorId',$vendor->getCustomerId())->setTemplate('marketplace/vendors/badge.phtml')->toHtml();?>
在Badge.php
echo $this->vendorId;
但是我的输出是空的。这是将数据传递给块的正确方法吗?
您需要像这样更改您的变量并检查它
<?php echo $this->getLayout()->createBlock('core/template')->setVendorId($vendor->getCustomerId())->setTemplate('marketplace/vendors/badge.phtml')->toHtml();?>
现在您可以像这样在 badge.phtml 文件中访问此供应商 ID 变量:
<?php echo $this->getVendorId();?>
这段代码写在market.phtml
<?php echo $this->getLayout()->createBlock('core/template')->setData('vendorId',$vendor->getCustomerId())->setTemplate('marketplace/vendors/badge.phtml')->toHtml();?>
在Badge.php
echo $this->vendorId;
但是我的输出是空的。这是将数据传递给块的正确方法吗?
您需要像这样更改您的变量并检查它
<?php echo $this->getLayout()->createBlock('core/template')->setVendorId($vendor->getCustomerId())->setTemplate('marketplace/vendors/badge.phtml')->toHtml();?>
现在您可以像这样在 badge.phtml 文件中访问此供应商 ID 变量:
<?php echo $this->getVendorId();?>