Новости Joomla

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

xxx87

  • Захожу иногда
  • 130
  • 4 / 0
  • прошу любить и жаловать
Всем привет! Маюсь несколько дней этим вопросом.
Осваиваю инет-магазин. Установила плагин от нашего, всеми любимого, 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

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

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

//Это все
*

Taatshi

  • Глобальный модератор
  • 5259
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Здесь не разбирают вопросы индивидуальной верстки

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

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

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

Taatshi

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

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

xxx87

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

Taatshi

  • Глобальный модератор
  • 5259
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Э... погодите. Я Вам перенесла под картинку все то, что у Вас не заполнено сейчас. Вы хотите под картинку табы запихать? Тогда так

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

xxx87

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

Taatshi

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

xxx87

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

nevigen

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

dmitry_stas

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

Taatshi

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

dmitry_stas

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

xxx87

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

*

Taatshi

  • Глобальный модератор
  • 5259
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Это я чукча)) счас поправим

строка 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, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

xxx87

  • Захожу иногда
  • 130
  • 4 / 0
  • прошу любить и жаловать
Это я чукча)) счас поправим

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

Taatshi

  • Глобальный модератор
  • 5259
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено] Не отображать блок сопутствующих товаров если их всех нет в наличии

Автор goga_pgasovav

Ответов: 3
Просмотров: 1003
Последний ответ 20.03.2023, 19:13:28
от goga_pgasovav
[Решено] Не отображать краткое описание товара вместо полного на стр.товара

Автор goga_pgasovav

Ответов: 7
Просмотров: 1096
Последний ответ 30.01.2023, 15:31:24
от kit2m2
Скрыть цену для товаров которых нет в наличии

Автор buto

Ответов: 2
Просмотров: 445
Последний ответ 21.12.2021, 11:41:02
от buto
Как из контроллера перенести самописный код в плагин?

Автор kit2m2

Ответов: 35
Просмотров: 1357
Последний ответ 22.08.2020, 09:36:56
от kit2m2
Краткое описание товара в корзине

Автор goga_pgasovav

Ответов: 2
Просмотров: 497
Последний ответ 05.08.2020, 07:24:02
от draff