【问题标题】:Read image files from non-default directory in PrestaShop 1.6从 PrestaShop 1.6 中的非默认目录读取图像文件
【发布时间】:2015-08-13 05:25:15
【问题描述】:

您好 Stack Overflow 社区,几周前我为我工作的公司在 Xampp 服务器上安装了 PrestaShop 1.6.0.14。他们有一个网络应用程序来处理他们网站上的所有图像文件,例如,当用户通过右键单击打开图像->在不同选项卡或类似选项中打开图像时,显示的 url 类似于:

http://www.example.net/FileViewer/File.aspx?Type=3&File=WebsiteFileDirectory/img/logo.jpg&Width=138&Height=50

如您所见,在&File= 部分之后是目录结构和最后处理图像的一些参数。此目录(WebsiteFileDirectory)位于C:/StorageFiles/Volume1/,用于图像处理的网络应用程序会在其中查找文件源。

我的 PrestaShop /img/ 文件夹需要位于该位置,其目录结构类似于 C:/StorageFolder/Volume1/PrestashopFileDirectory/img。到目前为止,我已经将/img/ 移动到该位置,并通过编辑config/defines.inc.php 中的常量值_PS_IMG__PS_IMG_DIR__PS_CORE_IMG_DIR_,设法使 Prestashop write 进入新位置和config/defines_uri.inc.php

但在那之后,当我试图让 PrestaShop 从该位置 读取 时,我遇到了障碍,我什至尝试通过硬编码指向目录的 uri_path 值来编辑 LinkCore::getImageLink() 方法之前提到过,没有任何结果,PS 会尝试从默认位置读取(类似于myshop/16-small_default/image_filename.jpg

如何让 PrestaShop 从该位置读取?有没有办法做到这一点?

提前致谢。

P.S.:只是为了确保我得到一个直截了当的答案,我想让你知道,到目前为止,我已经知道 PS 1.6 中的图像文件系统是如何工作的,如果图像 id 为 25,PS 会将文件存储在 @ 987654334@对于产品图片,我对此没有任何问题。

【问题讨论】:

    标签: image filesystems prestashop prestashop-1.6


    【解决方案1】:

    好吧,事实证明 getImageLink 必须提供一个 URL(来自我之前提到的图像处理 webapp),而不是文件系统路径。因此,此方法中的 uri_path 变量如下所示:

    $uri_path = 'http://www.example.net/FileViewer/File.aspx?Type=3&File='.$my_img_directory.'&Width=138&Height=50';
    

    到目前为止,我认为需要类似调整的方法是 getMediaLink 和 getCatImageLink,它们来自 classes/Link.php 文件中的同一 Link 类。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-22
      相关资源
      最近更新 更多