Куда идем?

Сторонний highslide.js для доп. изображений в карточке товара

Больше
12 года 7 мес. назад #2867 от Delik
Всем привет.
Интересует как прикрутить сторонний скрипт highslide.js к изображениям товара (и доп. изображениям) карточке товара?

В категории сделал - там всё просто оказалось:
Code:
<a href="<?php echo $product_full_image ?>" class="highslide" onclick="return hs.expand(this)"> <?php echo ps_product::image_tag( $product_thumb_image, 'class="browseProductImage" border="0" title="'.$product_name.'" alt="'.$product_name .'"' ) ?> </a>

тоесть в ссылку добавляется
Code:
class="highslide" onclick="return hs.expand(this)"

но в карточке товара вывод картинок генерируется на php в theme.php
Подскажите пожалуйста как реализовать?

vm 1.1.5 / Буду очень признателен

Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.

Больше
12 года 7 мес. назад - 12 года 7 мес. назад #2868 от Merkury
что-то не пойму в чем сложность...
Что мешает в шаблоне карточки (в том что вы испольуете, к примеру flypage-ask) написать как-то так
Code:
<нужныйтег class="нужный класс"> <?= ps_product::image_tag( urldecode($product_thumb_image), 'class="browseProductImage чехочутоиворочу" border="0" title="'.$product_name.'" alt="'.$product_name .'"' ) ?> </нужныйтег>


т.е. все так как вы сделали для категории?
Последнее редактирование: 12 года 7 мес. назад пользователем Merkury.

Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.

Больше
12 года 7 мес. назад - 12 года 7 мес. назад #2869 от Delik
Merkury, спасибо, получилось с основным изображением на карточке товара - код:
Code:
<a href="components/com_virtuemart/shop_image/product/<?php echo $product_full_image ?>" class="highslide" onclick="return hs.expand(this)"> <?php echo ps_product::image_tag( $product_thumb_image, 'border="0" title="'.$product_name.'" alt="'.$product_name .'"' ) ?> </a>

Но как быть с дополнительными изображениями?
они выводятся следующей меткой в флайпэйдж:
Code:
<?php echo $this->vmlistAdditionalImages( $product_id, $images ) ?>
Видимо править надо то, где генерируется код этой метки, тоесть theme.php?

Вот пример карточки товара:
http://http://co-plus.ru/mart.html?page=shop.product_details&flypage=flypage-ask.tpl&product_id=21&category_id=1
Последнее редактирование: 12 года 7 мес. назад пользователем Delik.

Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.

Больше
12 года 7 мес. назад - 12 года 7 мес. назад #2870 от Merkury
в вашей теме есть файл theme.php, там есть функция vmMoreImagesLink вот и измените ее под себя, покрайней мере посмотрите что там происходит, так же эта функция вызывается в administrator/components/com_virtuemart/html/shop.productd_detales.php по идее там же формируется список этих файлов, это надо смотреть, у меня пока первый машгазин и задач не возникало с доп картинками, поэтому не смотрел, а специально копаться нет времени, спать пора...
Последнее редактирование: 12 года 7 мес. назад пользователем Merkury.

Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.

Больше
12 года 7 мес. назад #2871 от Merkury
покопайтесь и пожалуйста отпишетсь, самому тож стало интересно, но задач выше крыше что бы и с интересами разбираться :-)

Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.

Больше
12 года 7 мес. назад #2889 от Delik

Merkury пишет: покопайтесь и пожалуйста отпишетсь, самому тож стало интересно, но задач выше крыше что бы и с интересами разбираться :-)


решение:

файл theme.php — :121 :124 строчки

заменил на:
Code:
$html .= "<a href=\"{$image->file_url}\" title=\"$title\" class=\"highslide\" onclick=\"return hs.expand(this)\">$thumbtag</a>";

вся функция:
Code:
function vmlistAdditionalImages( $product_id, $images, $title='', $limit=1000 ) { global $sess; $html = ''; $i = 0; foreach( $images as $image ) { $thumbtag = ps_product::image_tag( $image->file_name, 'class="browseProductImage"', 1, 'product', $image->file_image_thumb_width, $image->file_image_thumb_height ); $fulladdress = $sess->url( 'index2.php?page=shop.view_images&amp;image_id='.$image->file_id.'&amp;product_id='.$product_id.'&amp;pop=1' ); if( $this->get_cfg('useLightBoxImages', 1 )) { $html .= "<a href=\"{$image->file_url}\" title=\"$title\" class=\"highslide\" onclick=\"return hs.expand(this)\">$thumbtag</a>"; } else { $html .= "<a href=\"{$image->file_url}\" title=\"$title\" class=\"highslide\" onclick=\"return hs.expand(this)\">$thumbtag</a>"; } $html .= ' '; if( ++$i > $limit ) break; } return $html;

пример работы: http://co- plus.ru/mart.html?page=shop.product_details&flypage=flypage-ask.tpl&product_id=23&category_id=1 (без пробела)

Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.

Больше
12 года 7 мес. назад - 12 года 7 мес. назад #2890 от Delik
Да, вот сам скрипт где брал (хайслайд) - очень много возможностей у него
ruseller.com/adds.php?rub=12&id=1659

кому интересно пользуйтсь, кайфовый
Последнее редактирование: 12 года 7 мес. назад пользователем Delik.

Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.

Больше
12 года 7 мес. назад #2891 от Merkury
За самостоятельную работу +1)

Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.