0

商品カードに画像を追加しました。その後、テーブル #__virtuemart_medias のみが変更されました。したがって、製品とその画像をバインドするために必要なすべての情報が追加されていると思います。右?ただし、「product_id」などのフィールドがないため、表示できません。フィールド「vendor_id」のみが表示されます。

virtuemart_media_id (AUTO_INCREMENT)
file_title
file_description
file_meta
file_mimetype
file_type
file_url
file_url_thumb
file_is_product_image
file_is_downloadable
file_is_forSale
file_params
shared
published
created_on
created_by
modified_on
modified_by
locked_on
locked_by

私には意味がありません。誰にもアイデアはありますか?

4

2 に答える 2

3

バーチューマート 2.0.10 の場合

私は長い間検索した後、この修正を取得しましたが、解決策はありませんでした。これを行うには、components/com_virtuemart/views/invoice/tmpl/invoice_items.php の 74 行あたりに移動して、新しいタグを作成し、このコードを追加します。

<?php
         if (!empty($item->product_quantity)) {

             $db = JFactory::getDBO();
             $qs = "SELECT file_url_thumb FROM #__virtuemart_medias WHERE virtuemart_media_id = (SELECT virtuemart_media_id FROM #__virtuemart_product_medias WHERE virtuemart_product_id =".$item->virtuemart_product_id.")"; //print_r($qs);
  $db->setQuery($qs);
  $item2 = $db->loadAssocList();
         foreach($item2 as $file_thumb){
            //echo $file_thumb['file_url_thumb'];
             ?>
             <img src="<?php  echo JURI::root () . $file_thumb['file_url_thumb'] ?>" />
             <?php
             }
          }

        ?>
于 2013-08-25T13:10:53.423 に答える
1

あなたの質問の最初の情報は十分ではありませんでした。

使用している VM のバージョンは?

VM2.0 以降を使用している場合は、jos_virtuemart_product_medias このテーブルで VM が製品 ID とメディア ID を保持しているテーブル名を見つけることができます。このテーブルから製品に割り当てられたすべての画像を取得します。

これがあなたを助けることを願っています..

于 2013-02-18T04:50:35.367 に答える