prestashop 是如何加载图片的?

How does prestashop loads Images?

我有 2 家 prestashop 商店在同一个 ftp 中托管,产品相同,其中一个加载了所有图像(超过 9k),另一个 none,我想从prestashop 加载图像的控制器和功能是什么。

我知道图像存储在 /img/p {带斜线的数字}/product_id.jpg 所以我唯一缺少的是图像在前端加载的地方所以我可以更改该函数并使其指向另一家商店的照片,以避免将每张照片上传到第二家商店的工作。

我有 php 知识,所以我正在寻找 "hardcode" 此功能的方法。 知道这不是正确的工作方式,我正在寻找开发一个允许我这样做的脚本。

产品的图片路径与product id无关,但与image id相关。例如:id_image =35 路线应该是/img/p/3/5/35.jpg 您可以在 ps_image table in DB.

中找到图像和产品之间的关系

图像 link 是在位于 classes/Link.phpLink::getImageLink 函数中动态生成的。如果你想做一些修改,这是最好的地方。

祝你好运

转到您的后端 Vaii,在产品页面中,您会找到“导出”按钮。

在 csv 的前两列中有 id 和 url image。

include(dirname(__FILE__).'/../../config/config.inc.php');

//Customize it so you have <product id> and <your ur photo>

$image = new Image();
$image->id_product = (int) <product id>;
$image->position = Image::getHighestPosition($product->id) + 1;
$image->cover =  true;
$image->add();
$photo_url = <your ur photo>;
copyImg($id, $image->id, $photo_url, 'products', !Tools::getValue('regenerate'));