Форум русской поддержки Joomla!® CMS
04.12.2016, 18:21:17 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Дублируется изображение в товаре

 (Прочитано 2092 раз)
0 Пользователей и 1 Гость смотрят эту тему.
ilya_daddy
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 33



« : 31.07.2012, 18:11:19 »

Здравствуйте.

Такая проблема: В товаре загружена основная фотография, загружаю дополнительную. Обновляю и в карточки товара появляется основное изображение  и как бы  дополнительным изображением дублируется основное фото, а затем идет дополнительная фотография которую я загружал Т.е. проблема в том, что в карточки товара дублируется основное изображение.

Это глюк? или где то надо настроить?
« Последнее редактирование: 31.07.2012, 18:35:59 от ilya_daddy » Записан
nevigen
Moderator
*****

Репутация: +734/-16
Offline Offline

Пол: Мужской
Сообщений: 8803


http://n*****n.com


« Ответ #1 : 31.07.2012, 18:20:38 »

нет это так работает.
принцип таков, что при нажатии на мини-доизображения они меняются в большом окне, а при клике на большое, открывается Lightbox.
Если бы не было мини основного, и Вы кликнули на дополнительное то уже не сможете посмотреть основное и увеличить его.
Так что принцип таков. нигде он не настраивается.
Записан
ilya_daddy
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 33



« Ответ #2 : 31.07.2012, 18:32:58 »

нет это так работает.
принцип таков, что при нажатии на мини-доизображения они меняются в большом окне, а при клике на большое, открывается Lightbox.
Если бы не было мини основного, и Вы кликнули на дополнительное то уже не сможете посмотреть основное и увеличить его.
Так что принцип таков. нигде он не настраивается.


Спасибо nevigen, за разъяснения. Не очень удобная система, но это лично моё мнение.
Записан
nevigen
Moderator
*****

Репутация: +734/-16
Offline Offline

Пол: Мужской
Сообщений: 8803


http://n*****n.com


« Ответ #3 : 31.07.2012, 18:43:30 »

Ну как есть. Можно конечно использовать другие эффекты. которе сразу увеличивают картинку из миниатюры.
ХайСлайд например (но он платный для коммерческих целей) или тот же лайт бокс н с другими эффектами. просто тогда надо переделывать шаблон.
Самому не очень нравится такая система. Но в принципе все в руках наши Wink
правим под себя, это всегда лучше чем клонированные магазины Wink
Записан
ilya_daddy
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 33



« Ответ #4 : 31.07.2012, 18:46:14 »

Ну как есть. Можно конечно использовать другие эффекты. которе сразу увеличивают картинку из миниатюры.
ХайСлайд например (но он платный для коммерческих целей) или тот же лайт бокс н с другими эффектами. просто тогда надо переделывать шаблон.
Самому не очень нравится такая система. Но в принципе все в руках наши Wink
правим под себя, это всегда лучше чем клонированные магазины Wink

Согласен, думаю я к этому вопросу ещё вернусь)
Записан
Linfuby
Живу я здесь
******

Репутация: +165/-0
Offline Offline

Пол: Мужской
Сообщений: 1202


Всё просто...


« Ответ #5 : 31.07.2012, 20:49:44 »

Согласен, думаю я к этому вопросу ещё вернусь)
Я сделал такой вариант:
Убрал из шаблона основное изображение, а на все дополнительные повесил Lightbox, в результате показывается несколько изображений и каждое при нажатии увеличивается.
P.S. Ну и убрал проверку на наличие доп. изображений, чтобы там показывались фото даже когда их всего одна.
Записан
Gatispan
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 9


« Ответ #6 : 05.02.2013, 04:46:05 »

Уважаемые участники форума. Прошу профессионалов помочь.
Согласно рекомендациям на форуме и Google перекроил шаблон страницы товара и сделал уже более менее нормальный вариант.

Необходимо, чтобы основное изображение оставалось (я отключил от него Lightbox и сделал не кликабельным), а в дополнительных миниатюрах его не было (они у меня открываются лайтбоксом). Есть ли какай-то способ запретить выводить thumbnail главной картинки?
Код:
<?php print $this->_tmp_product_html_before_image_thumb;?>
            <span id='list_product_image_thumb'>
            <?php if ( (count($this->images)>1) || (count($this->videos) && count($this->images)) ) {?>
                <?php foreach($this->images as $k=>$image){?>
                    <a class="lightbox" onclick="return hs.expand(this)" href="<?php print $this->image_product_path?>/<?php print $image->image_full;?>"><img class="jshop_img_thumb" src="<?php print $this->image_product_path?>/<?php print $image->image_thumb?>" alt="<?php print htmlspecialchars($image->_title)?>" title="<?php print htmlspecialchars($image->_title)?>"/></a>
                <?php }?>
            <?php }?>
            </span>
            <?php print $this->_tmp_product_html_after_image_thumb;?>
            <?php if (count($this->videos)){?>
                <?php foreach($this->videos as $k=>$video){?>
<?php if ($video->video_code) { ?>
<a href="#" id="video_<?php print $k?>" onclick="showVideoCode(this.id);return false;"><img class="jshop_video_thumb" src="<?php print $this->video_image_preview_path."/"; if ($video->video_preview) print $video->video_preview; else print 'video.gif'?>" alt="video" /></a>
<?php } else { ?>
                    <a href="<?php print $this->video_product_path?>/<?php print $video->video_name?>" id="video_<?php print $k?>" onclick="showVideo(this.id, '<?php print $this->config->video_product_width;?>', '<?php print $this->config->video_product_height;?>'); return false;"><img class="jshop_video_thumb" src="<?php print $this->video_image_preview_path."/"; if ($video->video_preview) print $video->video_preview; else print 'video.gif'?>" alt="video" /></a>
<?php } ?>
                <?php } ?>
            <?php }?>
            <?php print $this->_tmp_product_html_after_video;?>
Спасибо откликнувшимся!
« Последнее редактирование: 05.02.2013, 06:20:28 от Gatispan » Записан
Linfuby
Живу я здесь
******

Репутация: +165/-0
Offline Offline

Пол: Мужской
Сообщений: 1202


Всё просто...


« Ответ #7 : 05.02.2013, 14:44:01 »

Первая картинка идет с $k=0 А значит вывод для нее не сработает при установке условия if ($k)
Код:
<?php foreach($this->images as $k=>$image) if ($k) {?>
Записан
Gatispan
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 9


« Ответ #8 : 05.02.2013, 18:22:52 »

Первая картинка идет с $k=0 А значит вывод для нее не сработает при установке условия if ($k)
Код:
<?php foreach($this->images as $k=>$image) if ($k) {?>
А-А-а-а-а-а! Волшебник! Спасибо огромное!
Записан
HeavyRain
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 13



« Ответ #9 : 08.07.2015, 21:11:12 »

Добрый вечер, знатоки,

Со своими силами не могу совладать и найти в чём проблема кроеться. Тема старая, нужно поднять. Новую создавать безсмысленно.

В чём вся соль. Мне режет глаз одна проблема, на другом форуме решить её не смогли. В карточке товара у меня дублируеться главное изображение дважды. Если одно фото ещё ладно, не дублируеться, но если в товаре два фото загружено, то главное изображение отображаеться дважды и листаеться тоже дважды. А вот если выбрать атрибут, то одно изображение проподает. Что за глюк? Как поправить? Так со всем товаром.

Пример два фото: http://goo.gl/VTzJTA
Пример одно фото: http://goo.gl/1chohn
Записан
Linfuby
Живу я здесь
******

Репутация: +165/-0
Offline Offline

Пол: Мужской
Сообщений: 1202


Всё просто...


« Ответ #10 : 09.07.2015, 20:30:49 »

HeavyRain, представьте я решил Вашу проблему и справа от основной фотографии - главное фото не дублируется.
Вы нажимаете второе фото и главным изображением становится оно.
Вопрос! Как опять посмотреть первое фото не перегружая страницу?
Правильно - никак. Именно для этого основное фото и дублируется.
Посмотрите на топовые Интернет-Магазины, и Вы увидите что у всех так:
http://www.wildberries.ru/catalog/1966126/detail.aspx
Записан
dmitry_stas
Профи
********

Репутация: +795/-4
Offline Offline

Сообщений: 7741



« Ответ #11 : 09.07.2015, 21:51:13 »

Вы нажимаете второе фото и главным изображением становится оно.

это в базе. по ссылкам - не так.

HeavyRain, вам нужно при выводе дополнительных изображений пропускать (не выводить) первое, поскольку оно у вас уже выведено в основном блоке

Код:
foreach($this->images as $k=>$image){
    if ($k) {
        // тут вывод доп изображенний
    }
}
Записан
Linfuby
Живу я здесь
******

Репутация: +165/-0
Offline Offline

Пол: Мужской
Сообщений: 1202


Всё просто...


« Ответ #12 : 10.07.2015, 08:15:43 »

это в базе. по ссылкам - не так.
Признаю - не кликал. И все равно считаю Неправильным делать так, как сделано на сайте.
Учитывая небольшую разницу в размерах фото, то проще убрать блок с главным фото, оставив вывод только дополнительных.

P.S. Конечно удалить условие (count($this->images)>1) при выводе доп. изображений, иначе при наличии всего 1 фото там ничего не выведется.
Записан
dmitry_stas
Профи
********

Репутация: +795/-4
Offline Offline

Сообщений: 7741



« Ответ #13 : 10.07.2015, 08:34:58 »

ну можно и так, то уже дело вкуса. смысл то остается тем же - не выводить два раза изображение с индексом 0
Записан
HeavyRain
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 13



« Ответ #14 : 10.07.2015, 23:33:38 »

это в базе. по ссылкам - не так.

HeavyRain, вам нужно при выводе дополнительных изображений пропускать (не выводить) первое, поскольку оно у вас уже выведено в основном блоке

Код:
foreach($this->images as $k=>$image){
    if ($k) {
        // тут вывод доп изображенний
    }
}

Добрый вечер,

Что то я не допонимаю. Куда мне нужно этот код вставить? У меня все фото загружены во вкладке - Фото, там и оснавная картинка и остальные. Или я делаю просто, что то не так. Основное изображение нужно в другом месте загружать?Если не сложно на пальцах обьяснить, то буду признателен.


Пример два фото: http://goo.gl/VTzJTA
« Последнее редактирование: 10.07.2015, 23:41:37 от HeavyRain » Записан
Linfuby
Живу я здесь
******

Репутация: +165/-0
Offline Offline

Пол: Мужской
Сообщений: 1202


Всё просто...


« Ответ #15 : 13.07.2015, 08:14:48 »

Шаблон карточки товара. product_default.php. (Если не знаете где это - почитайте FAQ)
Найдите в шаблоне "foreach($this->images" и замените блок
Записан
HeavyRain
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 13



« Ответ #16 : 13.07.2015, 20:46:07 »

Добрый вечер,
Попробовал и так и так, не получаеться, может я не в том месте, что то удаляю или вставляю.
Вот часть кода из product_default.php
В двух местах нашёл этот код   <?php foreach($this->images as $k=>$image){?>
Танцевал с бубном но результата не добился  dry



Вроде решил проблему без особых потерь в функционале, не знаю правильно или нет.
Вставил вот это:
  <?php foreach($this->images as $k=>$image){
 if ($k==0) continue;
?>
« Последнее редактирование: 14.07.2015, 08:37:43 от HeavyRain » Записан
dmitry_stas
Профи
********

Репутация: +795/-4
Offline Offline

Сообщений: 7741



« Ответ #17 : 14.07.2015, 10:46:12 »

ну так это как раз и есть то, о чем я писал
не выводить два раза изображение с индексом 0
Записан
Linfuby
Живу я здесь
******

Репутация: +165/-0
Offline Offline

Пол: Мужской
Сообщений: 1202


Всё просто...


« Ответ #18 : 14.07.2015, 20:32:37 »

Вот так, Дмитрий... Помогаешь людям... Подсказываешь где и что...
А потом оказывается "Не получается так как вы сказали, я всё сделал сам".
Записан
HeavyRain
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 13



« Ответ #19 : 11.11.2015, 01:52:29 »

ну так это как раз и есть то, о чем я писал
Вот так, Дмитрий... Помогаешь людям... Подсказываешь где и что...
А потом оказывается "Не получается так как вы сказали, я всё сделал сам".

Спасибо =)
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet