📜  getProductImageUrl magento 2 (1)

📅  最后修改于: 2023-12-03 14:41:23.843000             🧑  作者: Mango

获取 Magento 2 产品图片 URL

当你需要在 Magento 2 中获取产品图片 URL 时,你可以使用以下代码片段来实现:

$productImage = $_product->getImage(); // 获取产品图片文件名
$productImageUrl = $this->helper('Magento\Catalog\Helper\Image')
    ->init($_product, 'product_page_image_large')
    ->setImageFile($productImage)
    ->getUrl(); // 获取产品图片 URL

以上代码将使用 $productImage 变量存储产品图片文件名,然后使用 Magento\Catalog\Helper\Image 辅助类来获取配置中 product_page_image_large 图像类型的产品图片 URL。

你可以在 Magento 2 模板文件中使用此代码片段来获取产品图片 URL。

Magento 2 数据库中获取产品图片 URL

如果您需要通过 Magento 2 数据库检索产品图片 URL,则需要查找 catalog_product_entity_varchar 表中 attribute_codeimage 的记录,然后将值解析为 URL。

以下是通过 SQL 查询获取产品图片 URL 的示例代码片段:

SELECT
    CONCAT(
        'https://yourmagentosite.com/pub/media/catalog/product',
        '/',
        value
    ) AS url
FROM
    catalog_product_entity_varchar
WHERE
    attribute_id = (
        SELECT
            attribute_id
        FROM
            eav_attribute
        WHERE
            attribute_code = 'image'
            AND entity_type_id = (
                SELECT
                    entity_type_id
                FROM
                    eav_entity_type
                WHERE
                    entity_type_code = 'catalog_product'
            )
    );

注意,上述代码片段假定 catalog_product_entity_varchar 表的前缀为 eav_yourmagentosite.com 是您 Magento 2 站点的域名,且存储产品图像文件的目录位于 pub/media/catalog/product/ 中。

您可以将上述代码片段与 Magento 2 模块、插件或自定义脚本集成,以便以编程方式获取产品图片 URL。