php - Magento 2 | getImage() 函数在自定义 phtml 文件中不起作用
问题描述
在我的项目中,我试图在我的相关产品.phtml 文件中调用“\Magento\CatalogWidget\Block\Product\ProductsList”块。此文件在产品页面上称为带有 ajax 的 url。该页面被正确调用,但 $block->getImage() 函数失败并返回错误。
这是我在使用 ajax 调用的自定义文件中的代码:
$getSubCateColl = $blockProdCateColl->getCategoryProductsCollection($getCategoryID);
$block = $block->getLayout()->createBlock('\Magento\CatalogWidget\Block\Product\ProductsList');
$image = 'new_products_content_widget_grid';
$items = $blockProdCateColl->getCategoryProducts($getSubCateID);
<?php $countProd = 0; foreach ($items as $_item) : $countProd++; if($countProd <= 6): ?>
<?= $block->getImage($_item, $image)->toHtml(); ?> //THIS RETURN ERROR IN VAR LOG
<?php endif; endforeach ?>
另一方面,这是在 var/log 中返回的错误:
main.CRITICAL: TypeError: Argument 2 passed to Magento\Catalog\Block\Product\ImageFactory::getLabel() must be of the type string, null given, called in /htdocs/html/magento2/vendor/magento/module-catalog/Block/Product/ImageFactory.php on line 168 and defined in /htdocs/html/magento2/vendor/magento/module-catalog/Block/Product/ImageFactory.php:117
如何获取产品集合的图像的 html 块?
解决方案
推荐阅读
- ruby - 为什么我不能在 Ruby 中使用带有“for”循环的花括号?
- javascript - 将文档标题复制到剪贴板
- python - 上传文件[PYTHON]时如何解决“403身份验证范围不足”
- regex - RegEx 用于搜索各种格式的字符串
- c# - 使用 Nuget 包发送程序
- javascript - 将自定义 GraphQL 解析器和类型添加到 Prisma/Nexus 架构中
- java - 执行代码时预定义的布尔数组的长度发生变化
- angular - 如何将值传递给 dtOptions.buttons 的函数(e、dt、节点、配置)?
- video.js - VideoJS 覆盖和反应
- javascript - jquery.steps旁边的selectpicker中的重复列表项