идем вот сюда \components\com_virtuemart\themes\default\templates\product_details\flypage.tpl.php и ищем вот такой код:
echo $this->vmlistAdditionalImages( $product_id, $images );
комментируем или заменяем на следующий:
foreach( $images as $image ) { $thumb = str_replace ('/product', '/product/resized', $image->file_url); $thumb = str_replace ('.jpg', '_'.$image->file_image_thumb_height.'x'.$image->file_image_thumb_width.'.jpg', $thumb); echo "<a href='".$image->file_url."' title='".$image->file_title."' rel='lightbox[product".$product_id."]'><img src='".$thumb."' height='".$image->file_image_thumb_height."' width='".$image->file_image_thumb_width."'/></a>"; }
в результате на странице с товаром будут выводится уменьшенные копии (привью) дополнительных изображений!
на одном из сайтов выявилось, что к именам уменьшенных фото не всегда добавляются данные размеров. в итоге код flypage.tpl.php выглядит вот так:
foreach( $images as $image ) { $thumb = str_replace ('/product', '/product/resized', $image->file_name); if (!file_exists($_SERVER['DOCUMENT_ROOT'].$thumb)) { $thumb = str_replace ('.jpg', '_'.$image->file_image_thumb_height.'x'.$image->file_image_thumb_width.'.jpg', $thumb); } if (!file_exists($_SERVER['DOCUMENT_ROOT'].$thumb)) { $thumb = $image->file_name; } echo "<a href='/' title='".$image->file_title."' rel='lightbox[product".$product_id."]'><img src='".$thumb."' alt='".$image->file_title."' class='browseProductImage'/></a>"; }
но возникла другая проблема - с плагином \plugins\system\RDZoomer_VM.php - не правильно обрабатывались данные для уменьшенных и в итоге выдавало битую ссылку. в переборе
if (subdir == "resized"){
находим (image = image.split('_')[0];) и меняем, добавляя условия:
if (image.search(/_[0-9]+x[0-9]+/)>=0) { image = image.substring(0, image.lastIndexOf("_"));
и такие же правки вносим в /components/com_virtuemart/themes/default/theme.php иначе при выборе цвета из выпадающего списка картинки будут битые. итоговый кусок кода выглядит вот так:
$headtag.= ' var subdir = dir.split(/[/]+/).pop(); '."\n\r"; #ultima subdir thumb $headtag.= ' if (subdir == "resized"){ '."\n\r"; #se ultima subdir "resized".... $headtag.= ' dir = dir.substr(0,len-9); '."\n\r"; #....elimino ultima subdir $headtag.= ' ext = image.split(\'.\')[1]; '."\n\r"; #tolgo suffix nome thumb $headtag.= ' image = image.split(\'.\')[0]; /*console.log(image); ddd = image.search(/_[0-9]+x[0-9]+/); console.log(ddd);*/ '."\n\r"; $headtag.= ' if (image.search(/_[0-9]+x[0-9]+/)>=0) { image = image.substring(0, image.lastIndexOf("_")); /*console.log(image);*/ } '."\n\r"; $headtag.= ' image = image+\'.\'+ext; '."\n\r"; $headtag.= ' } '."\n\r";