原生Magento自定义工具上传器的URL变量,用于预览图像


URL Variable of Native Magento customization tool uploader to preview the image?

在magento自定义工具中,你可以把文件上传选项

但我希望当您在屏幕中上传图像预览时,至少当您单击编辑产品时

加载图像的变量是什么?使用购物车图片链接的 URL:

咔嚓....MY-WEB.com/sales/download/downloadCustomOption/id/107/key/a5cae363d3d6cde2e9c6/

我测试:img src=..此 URL 并显示正常,但哪个变量会干扰回显

在这里,他们使用闪存,但是如果您没有使用ajax检测到闪存http://demo.micosolutions.com/afup/ajax-flash-upload-pro-demo/ajax-flash-uploader-demo.html

我认为这些是可以谈论这个问题的文件:

app/design/frontend/base/default/template/catalog/product/view/options/type/file.phtml

app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Options/Type/file.php

编辑 删除旧答案,因为我误解了这个问题。

好的,这次我希望我正确理解了你想要什么。要从添加到购物车的产品中获取自定义选项图像的URL,您可以从报价单项中获取它:

    $item = $this->getItem();
    $optionIds = $item->getOptionByCode('option_ids');
    if( $optionIds ) {
      $options = array();
      foreach( explode( ',', $optionIds->getValue() ) as $optionId ) {
        $option = $this->getProduct()->getOptionById( $optionId );
        if( $option->getData( 'type' ) == 'file' ) {
          $option = $item->getOptionByCode( 'option_' . $optionId );
          $value = unserialize( $option->getData( 'value' ) );
          var_dump( $value );
          var_dump( Mage::getUrl( 'sales/download/downloadCustomOption', array( 'id' => $option->getId(), 'key' => $value[ 'secret_key' ] ) ) );
          echo '<img src="' . Mage::getUrl( 'sales/download/downloadCustomOption', array( 'id' => $option->getId(), 'key' => $value[ 'secret_key' ] ) ) . '"/>';
        }
      }
    }

输出:它 var 转储下载 url 并$value内容($value[ 'fullpath' ] 是图像文件的位置,但禁止从浏览器访问它 - 您必须将文件移动到媒体文件夹中的其他位置,在那里可以从 Web 访问)。回显将显示图像。

$item 属于 Mage_Sales_Model_Quote_Item 类型(此代码在 checkout/cart/index Controller - your_page_url/index.php/checkout/cart 中进行了测试,>代码可以添加到模板/checkout/cart/item/default.phtml 文件的顶部以查看其工作原理)。