For those who are awake!
Discount -15%
We use cookies
We use cookies to optimize our website. By continuing to browse the site, you agree to our use of cookies.
New design
Control panel
  • Русский
  • Українська
  • English
  • UAH
  • USD
  • RUB
  • EUR
  • 0-800-307-307 Hotline
  • +38 (044) 392-74-33 Kiev
  • +38 (057) 728-39-00 Kharkiv
  • +38 (056) 794-38-31 Dnipro
  • +38 (032) 229-58-93 Lviv
  • +38 (048) 738-57-70 Odessa
  • +38(093) 170-15-42  Life
  • +38 (067) 400-88-44 Kievstar
  • +1(888)393-24-51  USA, Toll free
  • +44(131)507-01-14  Great Britain
  • +7 (499) 348-28-61 Moscow

CMS Joomla. Пользователям Virtuemart 1.1.4!

FrodoMochoni
12 years old
0

Пишу просто впрок, из добрых побуждений.
Вопрос стоял следующим образом.
Дано: Joomla1.5, VirtueMart 1.1.4
Задача: При переносе сайта на хостинг, в категориях не выводилось изображение товара. На локале (денвер 2008) все выводиться. И что еще интереснее, в подробностях товара (flypage) эта же картинка отображается. Что делать?!
Не вдаваясь в подробности поиска...
Проблема заключалась в том, что по какой-то, мне до сих пор непонятной, причине в параметре src, тега img, формировался адрес типа:
xxx.dp.ua/components/com_virtuemart/show_image_in_imgtag.php?filename=resized%2F_________________4b434177703d9_165x165.png&newxsize=165&newysize=165&fileout=
который "воспринимался" Денвером, но не сервером хостера. В следствии чего, выводилась просто ссылка изображения и его alt

Эта же картинка выводиться во flypage, для товара, просто переменной $product_image, в то время как в browse это
ps_product::image_tag( $product_thumb_image, 'class="browseProductImage" border="0" title="'.$product_name.'" alt="'.$product_name .'"' ) для меня непонятный ход разработчиков, объясните, кто знает!

Решение:
За формирование адреса параметра src, тега img (только для категорий browse_xx.php, но не для товара fly_page.php) отвечает файл administrator\components\com_virtuemart\html\shop.browse.php. Где-то в 340 строке есть такое:
if( $product_thumb_image ) {
if( substr( $product_thumb_image, 0, 4)!= "http" ) {
if(PSHOP_IMG_RESIZE_ENABLE == '1') {
$product_thumb_image = $mosConfig_live_site."/components/com_virtuemart/show_image_in_imgtag.php?filename=".urlencode($product_thumb_image)."&newxsize=".PSHOP_IMG_WIDTH."&newysize=".PSHOP_IMG_HEIGHT."&fileout=";
}
elseif( !file_exists( IMAGEPATH."product/".$product_thumb_image )) {
$product_thumb_image = VM_THEMEURL.'images/'.NO_IMAGE;
}
}
}
Нас интересует эта строка. Ее меняем на:
if( $product_thumb_image ) {
if( substr( $product_thumb_image, 0, 4)!= "http" ) {
if(PSHOP_IMG_RESIZE_ENABLE == '1') {
$product_thumb_image = $mosConfig_live_site."/components/com_virtuemart/shop_image/product/".$product_thumb_image;
}
elseif( !file_exists( IMAGEPATH."product/".$product_thumb_image )) {
$product_thumb_image = VM_THEMEURL.'images/'.NO_IMAGE;
}
}
}

На выходе имеем стандартный адрес вида:
xxx.dp.ua/components/com_virtuemart/shop_image/product/resized/_________________4b434177703d9_165x165.png

Все! Спасибо за внимание!

The topic is closed.