0 Пользователей и 1 Гость просматривают эту тему.
  • 16 Ответов
  • 839 Просмотров
*

xxx87

  • Осваиваюсь на форуме
  • 130
  • 4
  • прошу любить и жаловать
Всем привет! Маюсь несколько дней этим вопросом.
Осваиваю инет-магазин. Установила плагин от нашего, всеми любимого, nevigen - список атрибутов. Добавила атрибуты. И здесь меня ждал подвох... Вывод большого кол-ва атрибутов ( 12 ) таблицей "наградил" карточку товара длинным хвостом.
пытаюсь немного скрасить всю картину путем правки CSS. Перенесла название товара влево над фото. "Хвост" из атрибутов немного поднялся вверх.
Еще хочу перенести описание товара вверх под фотографию товара, что бы хоть как-то скрасить эту пустоту. но мои попытки перенести код description непосредственно под image_middle не приносят плодов и только смещают плагин "список атрибутов" ниже. Можно ли всетаки как-нибудь реализовать перенос описания под фото? У меня что-то идей уже совсем не осталось :((
Ссылка на карточку товара http://akvagrunt.ru/shop/standart
Код файла product_default.php
Код
[spoiler]<?php
/**
 * @version      4.3.1 13.08.2013
 * @author       MAXXmarketing GmbH
 * @package      Jshopping
 * @copyright    Copyright (C) 2010 webdesigner-profi.de. All rights reserved.
 * @license      GNU/GPL
 */
defined('_JEXEC') or die('Restricted access');
$numberlimit = 3;
?>
<?php
$product = $this->product;
?>
<?php include(dirname(__FILE__)."/load.js.php");?>
<div class="zt_jshop">
<form name="product" method="post" action="<?php print $this->action?>" enctype="multipart/form-data" autocomplete="off">

<div class="zt_jshop_information_detail row">
    <div class="zt_jshop_image col-sm-5">
<h1><?php print $this->product->name?><?php if ($this->config->show_product_code){?> <?php }?></h1>
            <?php include(dirname(__FILE__)."/ratingandhits.php");?>
            <?php print $this->_tmp_product_html_start;?>

        <div class="image_middle">
            <?php print $this->_tmp_product_html_before_image;?>
            <?php if ($product->label_id){?>
                <div class="product_label <?php print $product->_label_name;?>"><?php print $product->_label_name;?></div>
            <?php }?>
            <?php if (count($this->videos)){?>
                <?php foreach($this->videos as $k=>$video){?>
                    <?php if ($video->video_code){ ?>
                        <div style="display:none" class="video_full" id="hide_video_<?php print $k?>"><?php echo $video->video_code?></div>
                    <?php } else { ?>
                        <a style="display:none" class="video_full" id="hide_video_<?php print $k?>" href=""></a>
                    <?php } ?>
                <?php } ?>
            <?php }?>


            <div id='list_product_image_middle'>
            <?php if(!count($this->images)){?>
                <img id = "main_image" src = "<?php print $this->image_product_path?>/<?php print $this->noimage?>" alt = "<?php print htmlspecialchars($this->product->name)?>" />
            <?php }?>
                <?php foreach($this->images as $k=>$image){?>
                    <a class="lightbox" id="main_image_full_<?php print $image->image_id?>" href="<?php print $this->image_product_path?>/<?php print $image->image_full;?>" <?php if ($k!=0){?>style="display:none"<?php }?>>
                        <img id = "main_image_<?php print $image->image_id?>" src = "<?php print $this->image_product_path?>/<?php print $image->image_name;?>" alt="<?php print htmlspecialchars($image->_title)?>" title="<?php print htmlspecialchars($image->_title)?>" />
                    </a>
                <?php }?>
            </div>
            <?php print $this->_tmp_product_html_after_image;?>
        </div>
        <div class="jshop_img_description">

            <div class="zt-carousel">
                <div class="jCarouselLite">
                    <ul>
                        <?php print $this->_tmp_product_html_before_image_thumb;?>
                        <?php if ( (count($this->images)>1) || (count($this->videos) && count($this->images)) ) {?>
                            <?php foreach($this->images as $k=>$image){?>
                                <li  style="border: 1px solid #E5E5E5;"><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)?>" onclick="showImage(<?php print $image->image_id?>)" /></li>
                            <?php }?>
                        <?php }?>
                    </ul>
                </div>

                <?php if(count($this->images) > $numberlimit){?>
                    <div class="nav_button">
                        <div class="prev"><i class="fa fa-angle-left"></i></div>
                        <div class="next"><i class="fa fa-angle-right"></i></div>
                    </div>
                <?php }?>
            </div>
            <script type="text/javascript">
                jQuery(document).ready(function($) {
                    <?php if( (count($this->images))){ ?>
                    $(".jCarouselLite").jCarouselLite({
                        btnPrev: ".zt-carousel .prev",
                        btnNext: ".zt-carousel .next",
                        slideWidth: 80,
                        visible: <?php echo $numberlimit;?>
                    });
                    <?php } ?>
                });
            </script>
            <?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;?>
        </div>
    </div>

    <div class="zt_jshop_short_description col-sm-7 col-xs-12">
        <div class="clearfix">
            <?php if ($this->config->display_button_print) print printContent();?>
        </div>
        <div class="zt_price_detail">
            <?php if($this->product->product_old_price > 0 || $this->product->_display_price ): ?>
                <div class="zt_price_detail_inner">
                    <?php if ($this->product->product_old_price > 0){?>
                        <span class="old_price" id="old_price"><?php print formatprice($this->product->product_old_price)?></span>
                    <?php }?>
                    <?php if ($this->product->_display_price){?>
                        <span id="block_price"><?php print formatprice($this->product->getPriceCalculate())?><?php print $this->product->_tmp_var_price_ext;?></span>
                    <?php } ?>
                </div>
            <?php endif;  ?>

            <?php if ($this->product->product_price_default > 0 && $this->config->product_list_show_price_default){?>
                <div class="default_price"><?php print _JSHOP_DEFAULT_PRICE?>: <span id="pricedefault"><?php print formatprice($this->product->product_price_default)?></span></div>
            <?php }?>

            <?php print $this->product->_tmp_var_bottom_price;?>

            <?php if ($this->config->show_tax_in_product && $this->product->product_tax > 0){?>
                <span class="taxinfo"><?php print productTaxInfo($this->product->product_tax);?></span>
            <?php }?>
            <?php if ($this->config->show_plus_shipping_in_product){?>
                <span class="plusshippinginfo"><?php print sprintf(_JSHOP_PLUS_SHIPPING, $this->shippinginfo);?></span>
            <?php }?>

            <?php if ($this->config->product_show_qty_stock){?>
                <div class="qty_in_stock"><?php print _JSHOP_QTY_IN_STOCK?>: <span id="product_qty"><?php print sprintQtyInStock($this->product->qty_in_stock);?></span></div>
            <?php }?>

            <?php if (!$this->config->hide_text_product_not_available && $this->available != null ){ ?>
                <div class = "not_available" id="not_available"><?php print $this->available?></div>
            <?php }?>

            <?php if ($this->product->product_basic_price_show){?>
                <div class="prod_base_price"><?php print _JSHOP_BASIC_PRICE?>: <span id="block_basic_price"><?php print formatprice($this->product->product_basic_price_calculate)?></span> / <?php print $this->product->product_basic_price_unit_name;?></div>
            <?php }?>

           
        </div>

       
       
        <?php if (count($this->attributes)){?>
            <div class="jshop_prod_attributes">
                <?php foreach($this->attributes as $attribut){?>
                    <div class="attributes">
                        <span class="attributes_title">
                            <span class="attributes_name"><?php print $attribut->attr_name?>:</span><span class="attributes_description"><?php print $attribut->attr_description;?></span>
                        </span>
                        <span class="attributes_description">
                            <span id='block_attr_sel_<?php print $attribut->attr_id?>'>
                            <?php print $attribut->selects?>
                            </span>
                        </span>
                    </div>
                <?php }?>
            </div>
        <?php }?>
        <?php print $this->_tmp_product_html_before_buttons;?>
        <?php if (!$this->hide_buy){?>
            <div class="prod_buttons" >
                <div class="zt_buttons clearfix">
                    <span class="prod_qty">Quantily:
                        <input type="text" name="quantity" id="quantity" onkeyup="reloadPrices();" class="inputbox" value="<?php print $this->default_count_product?>" /><?php print $this->_tmp_qty_unit;?>
                    </span>
                    <?php print $this->_tmp_product_html_buttons;?>
                    <button title="Add to cart" type="submit" class="button_buy buy_detail" onclick="jQuery('#to').val('cart');" >
                        <i class="fa fa-shopping-cart"></i><?php print _JSHOP_ADD_TO_CART?>
                    </button>
                    <button title="Add to wishlist" type="submit" class="button_wishlist" onclick="jQuery('#to').val('wishlist');"><i class="fa fa-heart"></i></button>
                   
                </div>
               
            </div>
        <?php }?>
        <?php print $this->_tmp_product_html_after_buttons;?>

        <div class="short_description">
            <p><?php print $this->product->short_description; ?></p>
        </div>

        <?php if ($this->config->product_show_manufacturer && $this->product->manufacturer_info->name!=""){?>
            <div class="manufacturer_name">
                <span class="bold"><?php print _JSHOP_MANUFACTURER?>:</span> <span><?php print $this->product->manufacturer_info->name?></span>
            </div>
        <?php }?>

        <?php if (count($this->product->freeattributes)){?>
            <div class="prod_free_attribs">
                <table class="jshop">
                    <?php foreach($this->product->freeattributes as $freeattribut){?>
                        <tr>
                            <td class="name"><span class="freeattribut_name"><?php print $freeattribut->name;?></span> <?php if ($freeattribut->required){?><span>*</span><?php }?><span class="freeattribut_description"><?php print $freeattribut->description;?></span></td>
                            <td class="field"><?php print $freeattribut->input_field;?></td>
                        </tr>
                    <?php }?>
                </table>
                <?php if ($this->product->freeattribrequire) {?>
                    <div class="requiredtext">* <?php print _JSHOP_REQUIRED?></div>
                <?php }?>
            </div>
        <?php }?>
    </div>
</div>
<input type="hidden" name="to" id='to' value="cart" />
<input type="hidden" name="product_id" id="product_id" value="<?php print $this->product->product_id?>" />
<input type="hidden" name="category_id" id="category_id" value="<?php print $this->category_id?>" />
</form>
<div id="zt_tabs" class="col-sm-5 col-xs-12">

            <ul class="tabs">
                <li class="first"><a href="#tabs-1" title="tab-1" class="active tab"><?php echo _JSHOP_DESCRIPTION ;?></a></li>
                <li><a href="#tabs-2" title="tab-2" class="tab"><?php echo JText::_("JSHOP_REVIEW"); ?></a></li>
            </ul>

            <div id="tab-1" class="content">
                <div class="zt_tab_inner">
                    <?php print $this->product->description; ?>
                    <?php if ($this->product->product_url!=""){?>
                        <div class="prod_url">
                            <a target="_blank" href="<?php print $this->product->product_url;?>"><?php print _JSHOP_READ_MORE?></a>
                        </div>
                    <?php }?>

                    <?php if ($this->product->delivery_time != ''){?>
                        <div class="deliverytime"><?php print _JSHOP_DELIVERY_TIME?>: <?php print $this->product->delivery_time?></div>
                    <?php }?>

                    <?php if (is_array($this->product->extra_field)){?>
                        <div class="extra_fields">
                            <?php $extra_field_group = "";
                            foreach($this->product->extra_field as $extra_field){
                                if ($extra_field_group!=$extra_field['groupname']){
                                    $extra_field_group = $extra_field['groupname'];
                                    ?>
                                    <div class='extra_fields_group'><?php print $extra_field_group?></div>
                                <?php }?>
                                <div><span class="extra_fields_name"><?php print $extra_field['name'];?></span><?php if ($extra_field['description']) {?> <span class="extra_fields_description"><?php print $extra_field['description'];?></span><?php } ?>: <span class="extra_fields_value"><?php print $extra_field['value'];?></span></div>
                            <?php }?>
                        </div>
                    <?php }?>
                </div>
            </div>

            <div id="tab-2" class="content" style="display:none">
                <div class="zt_tab_inner">
                    <?php
                    print $this->_tmp_product_html_before_review;
                    include(dirname(__FILE__)."/review.php");
                    ?>
                </div>
            </div>

           
    </div><!--/zt_tabs-->
<!------------------------------  short_description   - ------------------------------->





<?php print $this->_tmp_product_html_before_demofiles; ?>
<div id="list_product_demofiles"><?php include(dirname(__FILE__)."/demofiles.php");?></div>
<?php
if ($this->config->product_show_button_back){?>
    <div class="button_back">
        <input type="button" class="button" value="<?php print _JSHOP_BACK;?>" onclick="<?php print $this->product->button_back_js_click;?>" />
    </div>
<?php }?>
<?php
print $this->_tmp_product_html_before_related;
include(dirname(__FILE__)."/related.php");
?>
<?php print $this->_tmp_product_html_end;?>
</div>

<script type="text/javascript">
    jQuery(document).ready(function($) {
        $('a.tab').click(function(){
            $('.active').removeClass('active');
            $(this).addClass('active');
            $('.content').slideUp();
            var content_show = $(this).attr('title');
            $('#'+ content_show).slideDown();
        });
        jQuery('#quantity').keyup(function () {
            this.value = this.value.replace(/[^0-9\.]/g,'');
        });
    });
</script>[/spoiler]
Может быть кто-то поможет с советом как еще сгладить эту всю "красоту" с хвостом из атрибутов. Другие товары с меньшим кол-м атрибутов, но этот основной хотелось бы тоже довести до ума.
*

Cerber

  • Давно я тут
  • 268
  • 32
  • Богиня Иштар и ее пес Пи..ц
Здесь не разбирают вопросы индивидуальной верстки
Единственное если Вы не знаете через что выводится плагин то:
Код: php
$this->_tmp_product_html_after_buttons

Описание выводится:
Код: php
$this->$this->product->description

//Это все
*

Taatshi

  • Support Team
  • 4802
  • 453
  • Верстаем и немножко кодим. Обращайтесь ;)
Здесь не разбирают вопросы индивидуальной верстки

Это еще почему?

xxx87, во-первых, картинки атрибутов лучше сделать поменьше
Код: css
.td_attr img {
max-width: 50px;
height: auto;
}

Сейчас компоновку посмотрю
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3  /  ОТЗЫВЫ 
Минимальная ставка за платные услуги 1000 рэ Связь: telegram - Taatshi, почта - Taatshi на яндексе.
*

Taatshi

  • Support Team
  • 4802
  • 453
  • Верстаем и немножко кодим. Обращайтесь ;)
Попробуйте так... не гарантирую, что нигде не напортачила) Ужасно непривычно без доступа править  ^-^

Спойлер
[свернуть]
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3  /  ОТЗЫВЫ 
Минимальная ставка за платные услуги 1000 рэ Связь: telegram - Taatshi, почта - Taatshi на яндексе.
*

xxx87

  • Осваиваюсь на форуме
  • 130
  • 4
  • прошу любить и жаловать
Попробуйте так... не гарантирую, что нигде не напортачила) Ужасно непривычно без доступа править  ^-^
Аааввв ((( ничего не изменилось :(((( Я уже и сама не знаю что делать - куда только не пробовала этот description запихнуть - не получается :( плакаю  :'( >:(
может таблицей пробовать сделать? воткнуть всякие <tr> <td> :o !
*

Taatshi

  • Support Team
  • 4802
  • 453
  • Верстаем и немножко кодим. Обращайтесь ;)
Э... погодите. Я Вам перенесла под картинку все то, что у Вас не заполнено сейчас. Вы хотите под картинку табы запихать? Тогда так

Спойлер
[свернуть]
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3  /  ОТЗЫВЫ 
Минимальная ставка за платные услуги 1000 рэ Связь: telegram - Taatshi, почта - Taatshi на яндексе.
*

xxx87

  • Осваиваюсь на форуме
  • 130
  • 4
  • прошу любить и жаловать
Э... погодите. Я Вам перенесла под картинку все то, что у Вас не заполнено сейчас. Вы хотите под картинку табы запихать? Тогда так
И тоже табы как на месте стояли так и стоят. ((
*

Taatshi

  • Support Team
  • 4802
  • 453
  • Верстаем и немножко кодим. Обращайтесь ;)
Вы где все это меняете? Я никаких изменений в коде страницы не вижу.
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3  /  ОТЗЫВЫ 
Минимальная ставка за платные услуги 1000 рэ Связь: telegram - Taatshi, почта - Taatshi на яндексе.
*

xxx87

  • Осваиваюсь на форуме
  • 130
  • 4
  • прошу любить и жаловать
Вы где все это меняете? Я никаких изменений в коде страницы не вижу.
вот здесь меняю product_default.php путь:/public_html/components/com_jshopping/templates/default/product/
*

nevigen

  • Moderator
  • 8913
  • 755
  • http://n*****n.com
/templates/zo2_colias/html/com_jshopping
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

dmitry_stas

  • Профи
  • 9994
  • 948
девушка уже забыла, что у нее шаблон переопределен :) видимо необходимо повторить втык :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Taatshi

  • Support Team
  • 4802
  • 453
  • Верстаем и немножко кодим. Обращайтесь ;)
Дмитрий, не ругайся - я вон забыла, что php на свете существует  ;)
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3  /  ОТЗЫВЫ 
Минимальная ставка за платные услуги 1000 рэ Связь: telegram - Taatshi, почта - Taatshi на яндексе.
*

dmitry_stas

  • Профи
  • 9994
  • 948
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

xxx87

  • Осваиваюсь на форуме
  • 130
  • 4
  • прошу любить и жаловать
девушка уже забыла, что у нее шаблон переопределен :) видимо необходимо повторить втык :)
:) Дмитрий, упс. Спутала пути. Каюсь  :o
Дмитрий, не ругайся - я вон забыла, что php на свете существует  ;)
И тем не менее на сайте после замены кода ваабдже полная абракадабра. :o Это уже наверное не судьба ((((

*

Taatshi

  • Support Team
  • 4802
  • 453
  • Верстаем и немножко кодим. Обращайтесь ;)
Это я чукча)) счас поправим

строка 5

Код: html4strict
<div class="zt_jshop_image col-sm-5">

меняем на

Код: html4strict
<div class="zt_jshop_image col-sm-12">

Потом лезем а в админку и заполняем все данные, которые будут в карточке товара. Править, не понимая, что именно там будет, мне надоело  ^-^

И  не надо для демо текста использовать неразрывные километровые слова - проставьте пробелы.
« Последнее редактирование: 30.04.2015, 12:27:07 от Taatshi »
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3  /  ОТЗЫВЫ 
Минимальная ставка за платные услуги 1000 рэ Связь: telegram - Taatshi, почта - Taatshi на яндексе.
*

xxx87

  • Осваиваюсь на форуме
  • 130
  • 4
  • прошу любить и жаловать
Это я чукча)) счас поправим

И  не надо для демо текста использовать неразрывные километровые слова - проставьте пробелы.
Ооооооооооо :))))))) сколько счастььььяяяяяя!! Все стало на место :))))))) спасибо большое - Вы просто гений !  :-* :-* :-* :-* :-* :-* :-* :-* :-*
*

Taatshi

  • Support Team
  • 4802
  • 453
  • Верстаем и немножко кодим. Обращайтесь ;)
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3  /  ОТЗЫВЫ 
Минимальная ставка за платные услуги 1000 рэ Связь: telegram - Taatshi, почта - Taatshi на яндексе.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Первое изображение - PNG

Автор vityushka

Ответов: 2
Просмотров: 147
Последний ответ 07.08.2017, 12:09:07
от vityushka
Описание категории в произвольном месте шаблона

Автор orsy

Ответов: 6
Просмотров: 130
Последний ответ 19.06.2017, 16:41:50
от orsy
Не выводить описание, если оно пустое

Автор katjuha6

Ответов: 4
Просмотров: 118
Последний ответ 15.06.2017, 20:52:11
от katjuha6
Краткое описание в карточке товара

Автор pobo

Ответов: 7
Просмотров: 211
Последний ответ 31.03.2017, 23:44:20
от dmitry_stas
Не отображается описание категории

Автор Santei

Ответов: 25
Просмотров: 252
Последний ответ 17.02.2017, 08:53:50
от kit2m2