0

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

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

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

htt....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

4

1 回答 1

0

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

好吧,这次我希望我能正确理解你想要什么。要从添加到购物车的产品中获取自定义选项图像的 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'] 是图像文件的位置,但禁止从浏览器访问它 - 您必须将文件移动到媒体中的不同位置可以从网络访问的文件夹)。echo 将显示图像。

$item 是 Mage_Sales_Model_Quote_Item 类型(此代码已在 checkout/cart/index 控制器中测试 - your_page_url/index.php/checkout/cart -> 代码可以添加到 template/checkout/cart/item/default.phtml 文件的顶部看看它是如何工作的)。

于 2013-01-24T12:45:39.520 回答