piklas Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 (змінено) Добрый день, подскажите возможно ли сделать так что бы в описании товара добавлялись названия опций (расцветки) которые возможно заказать, и автоматом скрывались названия тех опций которые закончились для конкретного товара? Змінено 17 січня 2021 користувачем piklas Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 Можно Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 34 минуты назад, Dimasscus сказал: Можно Отлично, а подскажите куда копать? Я так понимаю надо модифицировать файл product.tpl? В нем добавлять код который будет отвечать за вывод "Названия цвета" опции. Если не трудно то подскажите с какими переменными работать? Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 12 минут назад, piklas сказал: Отлично, а подскажите куда копать? Я так понимаю надо модифицировать файл product.tpl? В нем добавлять код который будет отвечать за вывод "Названия цвета" опции. Если не трудно то подскажите с какими переменными работать? С теми же что вьіводят опции в блоке product. Нужно смотреть на конкретном шаблоне. Если в кратце- взять тот же массив переменньіх, и поместить его в блок описания, сформировав отображение так как вам нужно Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 Шаблон дефонлтный. Спасибо за информацию буду копать. Если есть знающие люди, направьте на путь истинный. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 Только что, piklas сказал: Шаблон дефонлтный. Спасибо за информацию буду копать. Если есть знающие люди, направьте на путь истинный. Если дефолтньій то все проще. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 К сожалению нет 2-ки развернутой. Показал бьі на примере Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 17 минут назад, Dimasscus сказал: К сожалению нет 2-ки развернутой. Показал бьі на примере Вот код из файла продукт. <?php echo $header; ?> <style> .addthis_toolbox.addthis_default_style .addthis_toolbox a.addthis_button_tweet { width: 79px; } </style> <div class="container"> <ul class="breadcrumb"> <?php foreach ($breadcrumbs as $breadcrumb) { ?> <li><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a></li> <?php } ?> </ul> <div class="row"><?php echo $column_left; ?> <?php if ($column_left && $column_right) { ?> <?php $class = 'col-sm-6'; ?> <?php } elseif ($column_left || $column_right) { ?> <?php $class = 'col-sm-9'; ?> <?php } else { ?> <?php $class = 'col-sm-12'; ?> <?php } ?> <div id="content" class="<?php echo $class; ?>"><?php echo $content_top; ?> <div class="row"> <?php if ($column_left || $column_right) { ?> <?php $class = 'col-sm-6'; ?> <?php } else { ?> <?php $class = 'col-sm-8'; ?> <?php } ?> <div class="<?php echo $class; ?>"> <?php if ($thumb || $images) { ?> <ul class="thumbnails"> <?php if ($thumb) { ?> <li><a class="thumbnail" href="<?php echo $popup; ?>" title="<?php echo $heading_title; ?>"><img class="lazyload" data-src="<?php echo $thumb; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a></li> <?php } ?> <?php if ($images) { ?> <?php foreach ($images as $image) { ?> <li class="image-additional"><a class="thumbnail" href="<?php echo $image['popup']; ?>" title="<?php echo $heading_title; ?>"> <img class="lazyload" data-src="<?php echo $image['thumb']; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a></li> <?php } ?> <?php } ?> </ul> <?php } ?> <ul class="nav nav-tabs"> <li class="active"><a href="#tab-description" data-toggle="tab"><?php echo $tab_description; ?></a></li> <?php if ($attribute_groups) { ?> <li><a href="#tab-specification" data-toggle="tab"><?php echo $tab_attribute; ?></a></li> <?php } ?> <?php if ($review_status) { ?> <li><a href="#tab-review" data-toggle="tab"><?php echo $tab_review; ?></a></li> <?php } ?> </ul> <div class="tab-content"> <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php echo $option_value['name']; ?> </div> <?php if ($attribute_groups) { ?> <div class="tab-pane" id="tab-specification"> <table class="table table-bordered"> <?php foreach ($attribute_groups as $attribute_group) { ?> <thead> <tr> <td colspan="2"><strong><?php echo $attribute_group['name']; ?></strong></td> </tr> </thead> <tbody> <?php foreach ($attribute_group['attribute'] as $attribute) { ?> <tr> <td><?php echo $attribute['name']; ?></td> <td><?php echo $attribute['text']; ?></td> </tr> <?php } ?> </tbody> <?php } ?> </table> </div> <?php } ?> <?php if ($review_status) { ?> <div class="tab-pane" id="tab-review"> <form class="form-horizontal" id="form-review"> <div id="review"></div> <h2><?php echo $text_write; ?></h2> <?php if ($review_guest) { ?> <div class="form-group required"> <div class="col-sm-12"> <label class="control-label" for="input-name"><?php echo $entry_name; ?></label> <input type="text" name="name" value="" id="input-name" class="form-control" /> </div> </div> <div class="form-group required"> <div class="col-sm-12"> <label class="control-label" for="input-review"><?php echo $entry_review; ?></label> <textarea name="text" rows="5" id="input-review" class="form-control"></textarea> <div class="help-block"><?php echo $text_note; ?></div> </div> </div> <div class="form-group required"> <div class="col-sm-12"> <label class="control-label"><?php echo $entry_rating; ?></label> <?php echo $entry_bad; ?> <input type="radio" name="rating" value="1" /> <input type="radio" name="rating" value="2" /> <input type="radio" name="rating" value="3" /> <input type="radio" name="rating" value="4" /> <input type="radio" name="rating" value="5" /> <?php echo $entry_good; ?></div> </div> <?php echo $captcha; ?> <div class="buttons clearfix"> <div class="pull-right"> <button type="button" id="button-review" data-loading-text="<?php echo $text_loading; ?>" class="btn btn-primary"><?php echo $button_continue; ?></button> </div> </div> <?php } else { ?> <?php echo $text_login; ?> <?php } ?> </form> </div> <?php } ?> </div> </div> <?php if ($column_left || $column_right) { ?> <?php $class = 'col-sm-6'; ?> <?php } else { ?> <?php $class = 'col-sm-4'; ?> <?php } ?> <div class="<?php echo $class; ?>"> <div class="btn-group"> <button type="button" data-toggle="tooltip" class="btn btn-default" title="<?php echo $button_wishlist; ?>" onclick="wishlist.add('<?php echo $product_id; ?>');"><i class="fa fa-heart"></i></button> <!--<button type="button" data-toggle="tooltip" class="btn btn-default" title="<?php echo $button_compare; ?>" onclick="compare.add('<?php echo $product_id; ?>');"><i class="fa fa-exchange"></i></button>--> </div> <h1><?php echo $heading_title; ?></h1> <ul class="list-unstyled"> <!--<?php if ($manufacturer) { ?> <li><?php echo $text_manufacturer; ?> <a href="<?php echo $manufacturers; ?>"><?php echo $manufacturer; ?></a></li> <?php } ?>--> <li><?php echo $text_model; ?> <?php echo $model; ?></li> <?php if ($reward) { ?> <li><?php echo $text_reward; ?> <?php echo $reward; ?></li> <?php } ?> <li><?php echo $text_stock; ?> <?php echo $stock; ?></li> </ul> <?php if ($price) { ?> <ul class="list-unstyled"> <?php if (!$special) { ?> <li> <h2><?php echo $price; ?></h2> </li> <?php } else { ?> <li><span style="text-decoration: line-through;"><?php echo $price; ?></span></li> <li> <h2><?php echo $special; ?></h2> </li> <?php } ?> <?php if ($tax) { ?> <li><?php echo $text_tax; ?> <?php echo $tax; ?></li> <?php } ?> <?php if ($points) { ?> <li><?php echo $text_points; ?> <?php echo $points; ?></li> <?php } ?> <?php if ($discounts) { ?> <li> <hr> </li> <?php foreach ($discounts as $discount) { ?> <li><?php echo $discount['quantity']; ?><?php echo $text_discount; ?><?php echo $discount['price']; ?></li> <?php } ?> <?php } ?> </ul> <?php } ?> <div id="product"> <?php if ($options) { ?> <hr> <h3><?php echo $text_option; ?></h3> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'select') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <select name="option[<?php echo $option['product_option_id']; ?>]" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control"> <option value=""><?php echo $text_select; ?></option> <?php foreach ($option['product_option_value'] as $option_value) { ?> <option value="<?php echo $option_value['product_option_value_id']; ?>"><?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </option> <?php } ?> </select> </div> <?php } ?> <?php if ($option['type'] == 'radio') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label"><?php echo $option['name']; ?></label> <div id="input-option<?php echo $option['product_option_id']; ?>"> <?php foreach ($option['product_option_value'] as $option_value) { ?> <div class="radio"> <label> <input type="radio" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option_value['product_option_value_id']; ?>" /> <?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </label> </div> <?php } ?> </div> </div> <?php } ?> <?php if ($option['type'] == 'checkbox') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label"><?php echo $option['name']; ?></label> <div id="input-option<?php echo $option['product_option_id']; ?>"> <?php foreach ($option['product_option_value'] as $option_value) { ?> <div class="checkbox"> <label> <input type="checkbox" name="option[<?php echo $option['product_option_id']; ?>][]" value="<?php echo $option_value['product_option_value_id']; ?>" /> <?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </label> </div> <?php } ?> </div> </div> <?php } ?> <?php if ($option['type'] == 'image') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label"><?php echo $option['name']; ?></label> <div id="input-option<?php echo $option['product_option_id']; ?>"> <?php foreach ($option['product_option_value'] as $option_value) { ?> <div class="radio"> <label> <input type="radio" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option_value['product_option_value_id']; ?>" /> <img data-src="<?php echo $option_value['image']; ?>" alt="<?php echo $option_value['name'] . ($option_value['price'] ? ' ' . $option_value['price_prefix'] . $option_value['price'] : ''); ?>" class="img-thumbnail lazyload" /> <?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </label> </div> <?php } ?> </div> </div> <?php } ?> <?php if ($option['type'] == 'text') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" placeholder="<?php echo $option['name']; ?>" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" /> </div> <?php } ?> <?php if ($option['type'] == 'textarea') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <textarea name="option[<?php echo $option['product_option_id']; ?>]" rows="5" placeholder="<?php echo $option['name']; ?>" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control"><?php echo $option['value']; ?></textarea> </div> <?php } ?> <?php if ($option['type'] == 'file') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label"><?php echo $option['name']; ?></label> <button type="button" id="button-upload<?php echo $option['product_option_id']; ?>" data-loading-text="<?php echo $text_loading; ?>" class="btn btn-default btn-block"><i class="fa fa-upload"></i> <?php echo $button_upload; ?></button> <input type="hidden" name="option[<?php echo $option['product_option_id']; ?>]" value="" id="input-option<?php echo $option['product_option_id']; ?>" /> </div> <?php } ?> <?php if ($option['type'] == 'date') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <div class="input-group date"> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" data-date-format="YYYY-MM-DD" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" /> <span class="input-group-btn"> <button class="btn btn-default" type="button"><i class="fa fa-calendar"></i></button> </span></div> </div> <?php } ?> <?php if ($option['type'] == 'datetime') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <div class="input-group datetime"> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" data-date-format="YYYY-MM-DD HH:mm" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" /> <span class="input-group-btn"> <button type="button" class="btn btn-default"><i class="fa fa-calendar"></i></button> </span></div> </div> <?php } ?> <?php if ($option['type'] == 'time') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <div class="input-group time"> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" data-date-format="HH:mm" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" /> <span class="input-group-btn"> <button type="button" class="btn btn-default"><i class="fa fa-calendar"></i></button> </span></div> </div> <?php } ?> <?php } ?> <?php } ?> <?php if ($recurrings) { ?> <hr> <h3><?php echo $text_payment_recurring ?></h3> <div class="form-group required"> <select name="recurring_id" class="form-control"> <option value=""><?php echo $text_select; ?></option> <?php foreach ($recurrings as $recurring) { ?> <option value="<?php echo $recurring['recurring_id'] ?>"><?php echo $recurring['name'] ?></option> <?php } ?> </select> <div class="help-block" id="recurring-description"></div> </div> <?php } ?> <div class="form-group"> <label class="control-label" for="input-quantity"><?php echo $entry_qty; ?></label> <input type="text" name="quantity" value="<?php echo $minimum; ?>" size="2" id="input-quantity" class="form-control" /> <input type="hidden" name="product_id" value="<?php echo $product_id; ?>" /> <br /> <button type="button" id="button-cart" data-loading-text="<?php echo $text_loading; ?>" class="btn btn-primary btn-lg btn-block"><?php echo $button_cart; ?></button> </div> <?php if ($minimum > 1) { ?> <div class="alert alert-info"><i class="fa fa-info-circle"></i> <?php echo $text_minimum; ?></div> <?php } ?> </div> <?php if ($review_status) { ?> <div class="rating"> <p> <?php for ($i = 1; $i <= 5; $i++) { ?> <?php if ($rating < $i) { ?> <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-1x"></i></span> <?php } else { ?> <span class="fa fa-stack"><i class="fa fa-star fa-stack-1x"></i><i class="fa fa-star-o fa-stack-1x"></i></span> <?php } ?> <?php } ?> <a href="" onclick="$('a[href=\'#tab-review\']').trigger('click'); return false;"><?php echo $reviews; ?></a> / <a href="" onclick="$('a[href=\'#tab-review\']').trigger('click'); return false;"><?php echo $text_write; ?></a></p> <hr> <script src="https://yastatic.net/es5-shims/0.0.2/es5-shims.min.js"></script> <script src="https://yastatic.net/share2/share.js"></script> <div class="ya-share2" data-services="vkontakte,odnoklassniki,viber,whatsapp,telegram"></div> </div> <?php } ?> </div> </div> <?php if ($products) { ?> <h3><?php echo $text_related; ?></h3> <div class="row"> <?php $i = 0; ?> <?php foreach ($products as $product) { ?> <?php if ($column_left && $column_right) { ?> <?php $class = 'col-lg-6 col-md-6 col-sm-12 col-xs-12'; ?> <?php } elseif ($column_left || $column_right) { ?> <?php $class = 'col-lg-4 col-md-4 col-sm-6 col-xs-12'; ?> <?php } else { ?> <?php $class = 'col-lg-3 col-md-3 col-sm-6 col-xs-12'; ?> <?php } ?> <div class="<?php echo $class; ?>"> <div class="product-thumb transition"> <div class="image"><a href="<?php echo $product['href']; ?>"><img data-src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" title="<?php echo $product['name']; ?>" class="img-responsive lazyload" /></a></div> <div class="caption"> <h4><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></h4> <p><?php echo $product['description']; ?></p> <?php if ($product['rating']) { ?> <div class="rating"> <?php for ($i = 1; $i <= 5; $i++) { ?> <?php if ($product['rating'] < $i) { ?> <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-1x"></i></span> <?php } else { ?> <span class="fa fa-stack"><i class="fa fa-star fa-stack-1x"></i><i class="fa fa-star-o fa-stack-1x"></i></span> <?php } ?> <?php } ?> </div> <?php } ?> <?php if ($product['price']) { ?> <p class="price"> <?php if (!$product['special']) { ?> <?php echo $product['price']; ?> <?php } else { ?> <span class="price-new"><?php echo $product['special']; ?></span> <span class="price-old"><?php echo $product['price']; ?></span> <?php } ?> <?php if ($product['tax']) { ?> <span class="price-tax"><?php echo $text_tax; ?> <?php echo $product['tax']; ?></span> <?php } ?> </p> <?php } ?> </div> <div class="button-group"> <button type="button" onclick="cart.add('<?php echo $product['product_id']; ?>', '<?php echo $product['minimum']; ?>');"><span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span> <i class="fa fa-shopping-cart"></i></button> <button type="button" data-toggle="tooltip" title="<?php echo $button_wishlist; ?>" onclick="wishlist.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-heart"></i></button> <!--<button type="button" data-toggle="tooltip" title="<?php echo $button_compare; ?>" onclick="compare.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-exchange"></i></button>--> </div> </div> </div> <?php /* if (($column_left && $column_right) && ($i % 2 == 0)) { ?> <div class="clearfix visible-md visible-sm"></div> <?php } elseif (($column_left || $column_right) && ($i % 3 == 0)) { ?> <div class="clearfix visible-md"></div> <?php } elseif ($i % 4 == 0) { ?> <div class="clearfix visible-md"></div> <?php } */ ?> <?php $i++; ?> <?php } ?> </div> <?php } ?> <?php if ($tags) { ?> <p><?php echo $text_tags; ?> <?php for ($i = 0; $i < count($tags); $i++) { ?> <?php if ($i < (count($tags) - 1)) { ?> <a href="<?php echo $tags[$i]['href']; ?>"><?php echo $tags[$i]['tag']; ?></a>, <?php } else { ?> <a href="<?php echo $tags[$i]['href']; ?>"><?php echo $tags[$i]['tag']; ?></a> <?php } ?> <?php } ?> </p> <?php } ?> <?php echo $content_bottom; ?></div> <?php echo $column_right; ?></div> </div> <script type="text/javascript"><!-- $('select[name=\'recurring_id\'], input[name="quantity"]').change(function(){ $.ajax({ url: 'index.php?route=product/product/getRecurringDescription', type: 'post', data: $('input[name=\'product_id\'], input[name=\'quantity\'], select[name=\'recurring_id\']'), dataType: 'json', beforeSend: function() { $('#recurring-description').html(''); }, success: function(json) { $('.alert, .text-danger').remove(); if (json['success']) { $('#recurring-description').html(json['success']); } } }); }); //--></script> <script type="text/javascript"><!-- $('#button-cart').on('click', function() { $.ajax({ url: 'index.php?route=checkout/cart/add', type: 'post', data: $('#product input[type=\'text\'], #product input[type=\'hidden\'], #product input[type=\'radio\']:checked, #product input[type=\'checkbox\']:checked, #product select, #product textarea'), dataType: 'json', beforeSend: function() { $('#button-cart').button('loading'); }, complete: function() { $('#button-cart').button('reset'); }, success: function(json) { $('.alert, .text-danger').remove(); $('.form-group').removeClass('has-error'); if (json['error']) { if (json['error']['option']) { for (i in json['error']['option']) { var element = $('#input-option' + i.replace('_', '-')); if (element.parent().hasClass('input-group')) { element.parent().after('<div class="text-danger">' + json['error']['option'][i] + '</div>'); } else { element.after('<div class="text-danger">' + json['error']['option'][i] + '</div>'); } } } if (json['error']['recurring']) { $('select[name=\'recurring_id\']').after('<div class="text-danger">' + json['error']['recurring'] + '</div>'); } // Highlight any found errors $('.text-danger').parent().addClass('has-error'); } if (json['success']) { $('.breadcrumb').after('<div class="alert alert-success">' + json['success'] + '<button type="button" class="close" data-dismiss="alert">×</button></div>'); $('#cart > button').html('<span id="cart-total"><i class="fa fa-shopping-cart"></i> ' + json['total'] + '</span>'); $('html, body').animate({ scrollTop: 0 }, 'slow'); $('#cart > ul').load('index.php?route=common/cart/info ul li'); } }, error: function(xhr, ajaxOptions, thrownError) { alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText); } }); }); //--></script> <script type="text/javascript"><!-- $('.date').datetimepicker({ pickTime: false }); $('.datetime').datetimepicker({ pickDate: true, pickTime: true }); $('.time').datetimepicker({ pickDate: false }); $('button[id^=\'button-upload\']').on('click', function() { var node = this; $('#form-upload').remove(); $('body').prepend('<form enctype="multipart/form-data" id="form-upload" style="display: none;"><input type="file" name="file" /></form>'); $('#form-upload input[name=\'file\']').trigger('click'); if (typeof timer != 'undefined') { clearInterval(timer); } timer = setInterval(function() { if ($('#form-upload input[name=\'file\']').val() != '') { clearInterval(timer); $.ajax({ url: 'index.php?route=tool/upload', type: 'post', dataType: 'json', data: new FormData($('#form-upload')[0]), cache: false, contentType: false, processData: false, beforeSend: function() { $(node).button('loading'); }, complete: function() { $(node).button('reset'); }, success: function(json) { $('.text-danger').remove(); if (json['error']) { $(node).parent().find('input').after('<div class="text-danger">' + json['error'] + '</div>'); } if (json['success']) { alert(json['success']); $(node).parent().find('input').attr('value', json['code']); } }, error: function(xhr, ajaxOptions, thrownError) { alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText); } }); } }, 500); }); //--></script> <script type="text/javascript"><!-- $('#review').delegate('.pagination a', 'click', function(e) { e.preventDefault(); $('#review').fadeOut('slow'); $('#review').load(this.href); $('#review').fadeIn('slow'); }); $('#button-review').on('click', function() { $.ajax({ url: 'index.php?route=product/product/write&product_id=<?php echo $product_id; ?>', type: 'post', dataType: 'json', data: $("#form-review").serialize(), beforeSend: function() { $('#button-review').button('loading'); }, complete: function() { $('#button-review').button('reset'); }, success: function(json) { $('.alert-success, .alert-danger').remove(); if (json['error']) { $('#review').after('<div class="alert alert-danger"><i class="fa fa-exclamation-circle"></i> ' + json['error'] + '</div>'); } if (json['success']) { $('#review').after('<div class="alert alert-success"><i class="fa fa-check-circle"></i> ' + json['success'] + '</div>'); $('input[name=\'name\']').val(''); $('textarea[name=\'text\']').val(''); $('input[name=\'rating\']:checked').prop('checked', false); } } }); }); $(document).ready(function() { $('.thumbnails').magnificPopup({ type:'image', delegate: 'a', gallery: { enabled:true } }); }); //--></script> <?php echo $footer; ?> Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php echo $option_value['name']; ?> </div> что это? :)) Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 4 минуты назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php echo $option_value['name']; ?> </div> что это? :)) это мои эксперименты по выводу названий опций) забыл удалить Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 1 час назад, piklas сказал: это мои эксперименты по выводу названий опций) забыл удалить <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 42 минуты назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно Спасибо большое сейчас попробую. Отпишусь. Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 (змінено) 1 час назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно Работает, но выдает все опции и размер и цвет. А возможно что бы выводил только цвет и только одно значение, например: салатовый, серый, бирюза? без повторов? Змінено 17 січня 2021 користувачем piklas Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 10 минут назад, piklas сказал: Работает, но выдает все опции и размер и цвет. А возможно что бы выводил только цвет и только одно значение, например: салатовый, серый, бирюза? без повторов? я не знаю откуда у вас повторы вот как это у меня https://23ocs.shops-market.com/index.php?route=product/product&product_id=40 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 ага. у вас размер также опцией radio сделан. тогда нужно по другому делать Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 1 минуту назад, Dimasscus сказал: я не знаю откуда у вас повторы вот как это у меня https://23ocs.shops-market.com/index.php?route=product/product&product_id=40 Повторы это из за модуля выбора опций, для связи размер + расцветка - это для связи с 1с нужно. Я вот думаю как то же можно разбить foreach и выводить только значение опции цвет? Спасибо за код. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 (змінено) 27 минут назад, piklas сказал: Повторы это из за модуля выбора опций, для связи размер + расцветка - это для связи с 1с нужно. Я вот думаю как то же можно разбить foreach и выводить только значение опции цвет? Спасибо за код. строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Змінено 17 січня 2021 користувачем Dimasscus 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 43 минуты назад, Dimasscus сказал: строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Уже почти получилось. Только так и выводит списком, все комбинации цветов, а не просто ID цветов. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 28 минут назад, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Спасибо большое за помощь, буду дальше копать. Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 18 січня 2021 Автор Share Опубліковано: 18 січня 2021 В 17.01.2021 в 23:36, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Разобрался с выводом текста <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '14' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php $str = substr($str,0,-1); ?> <?php $coloropc = implode(', ', array_unique(explode(',', $str)));?> <p> <font size="2" color="red"> <strong> В данной модели предусмотрен выбор расцветки: <?php echo $coloropc?>.</strong></font> </p> теперь проблема в том что выводимому результату пристраивается значение <div class="options"> , и вся разметка сайта рушиться. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Схожі публікації [Поддержка] OAP PRO - MULTI AJAX опции как отдельные товары с автоматической связкой 1 2 3 Автор: OcEx, 22 жовтня 2023 опции варианты (і ще %d) Теги: опции варианты комплекты серии группы модели связи ajax товары 61 відповідь 5 264 перегляди OcEx 25 вересня Модуль Уведомление о наличии товара на складе PRO Opencart 1.5* [Поддержка] 1 2 Автор: Serg9988, 10 березня 2016 уведомить уведомленние (і ще %d) Теги: уведомить уведомленние уведомить о наличии наличие отсутствие товар на складе количество опций опции остаток уедомленние 42 відповіді 5 389 переглядів artvirus 16 лютого 2017 Модуль Уведомление о наличии PRO [Поддержка] 1 2 3 4 13 Автор: Serg9988, 30 березня 2016 наличие товар (і ще %d) Теги: наличие товар остаток опции наличие опций остаток на складе продукт товар с опциями уведомить заявка статусы 324 відповіді 42 414 перегляди Rusl83 23 квітня batch [Поддержка] Универсальный массовый редактор товаров. MULTIEDIT AI 1 2 3 4 11 Автор: Sha, 16 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 253 відповіді 57 985 переглядів Sha В неділю в 21:25 batch Універсальний масовий редактор товарів. MultiEdit AI Автор: Sha, 15 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 0 коментарів 57 324 перегляди Sha 15 березня 2017 Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Налаштування та оптимізація Добавление названий опций в описании карточки товара Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 Можно Надіслати Поділитися на інших сайтах More sharing options...
piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 34 минуты назад, Dimasscus сказал: Можно Отлично, а подскажите куда копать? Я так понимаю надо модифицировать файл product.tpl? В нем добавлять код который будет отвечать за вывод "Названия цвета" опции. Если не трудно то подскажите с какими переменными работать? Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 12 минут назад, piklas сказал: Отлично, а подскажите куда копать? Я так понимаю надо модифицировать файл product.tpl? В нем добавлять код который будет отвечать за вывод "Названия цвета" опции. Если не трудно то подскажите с какими переменными работать? С теми же что вьіводят опции в блоке product. Нужно смотреть на конкретном шаблоне. Если в кратце- взять тот же массив переменньіх, и поместить его в блок описания, сформировав отображение так как вам нужно Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 Шаблон дефонлтный. Спасибо за информацию буду копать. Если есть знающие люди, направьте на путь истинный. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 Только что, piklas сказал: Шаблон дефонлтный. Спасибо за информацию буду копать. Если есть знающие люди, направьте на путь истинный. Если дефолтньій то все проще. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 К сожалению нет 2-ки развернутой. Показал бьі на примере Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 17 минут назад, Dimasscus сказал: К сожалению нет 2-ки развернутой. Показал бьі на примере Вот код из файла продукт. <?php echo $header; ?> <style> .addthis_toolbox.addthis_default_style .addthis_toolbox a.addthis_button_tweet { width: 79px; } </style> <div class="container"> <ul class="breadcrumb"> <?php foreach ($breadcrumbs as $breadcrumb) { ?> <li><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a></li> <?php } ?> </ul> <div class="row"><?php echo $column_left; ?> <?php if ($column_left && $column_right) { ?> <?php $class = 'col-sm-6'; ?> <?php } elseif ($column_left || $column_right) { ?> <?php $class = 'col-sm-9'; ?> <?php } else { ?> <?php $class = 'col-sm-12'; ?> <?php } ?> <div id="content" class="<?php echo $class; ?>"><?php echo $content_top; ?> <div class="row"> <?php if ($column_left || $column_right) { ?> <?php $class = 'col-sm-6'; ?> <?php } else { ?> <?php $class = 'col-sm-8'; ?> <?php } ?> <div class="<?php echo $class; ?>"> <?php if ($thumb || $images) { ?> <ul class="thumbnails"> <?php if ($thumb) { ?> <li><a class="thumbnail" href="<?php echo $popup; ?>" title="<?php echo $heading_title; ?>"><img class="lazyload" data-src="<?php echo $thumb; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a></li> <?php } ?> <?php if ($images) { ?> <?php foreach ($images as $image) { ?> <li class="image-additional"><a class="thumbnail" href="<?php echo $image['popup']; ?>" title="<?php echo $heading_title; ?>"> <img class="lazyload" data-src="<?php echo $image['thumb']; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a></li> <?php } ?> <?php } ?> </ul> <?php } ?> <ul class="nav nav-tabs"> <li class="active"><a href="#tab-description" data-toggle="tab"><?php echo $tab_description; ?></a></li> <?php if ($attribute_groups) { ?> <li><a href="#tab-specification" data-toggle="tab"><?php echo $tab_attribute; ?></a></li> <?php } ?> <?php if ($review_status) { ?> <li><a href="#tab-review" data-toggle="tab"><?php echo $tab_review; ?></a></li> <?php } ?> </ul> <div class="tab-content"> <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php echo $option_value['name']; ?> </div> <?php if ($attribute_groups) { ?> <div class="tab-pane" id="tab-specification"> <table class="table table-bordered"> <?php foreach ($attribute_groups as $attribute_group) { ?> <thead> <tr> <td colspan="2"><strong><?php echo $attribute_group['name']; ?></strong></td> </tr> </thead> <tbody> <?php foreach ($attribute_group['attribute'] as $attribute) { ?> <tr> <td><?php echo $attribute['name']; ?></td> <td><?php echo $attribute['text']; ?></td> </tr> <?php } ?> </tbody> <?php } ?> </table> </div> <?php } ?> <?php if ($review_status) { ?> <div class="tab-pane" id="tab-review"> <form class="form-horizontal" id="form-review"> <div id="review"></div> <h2><?php echo $text_write; ?></h2> <?php if ($review_guest) { ?> <div class="form-group required"> <div class="col-sm-12"> <label class="control-label" for="input-name"><?php echo $entry_name; ?></label> <input type="text" name="name" value="" id="input-name" class="form-control" /> </div> </div> <div class="form-group required"> <div class="col-sm-12"> <label class="control-label" for="input-review"><?php echo $entry_review; ?></label> <textarea name="text" rows="5" id="input-review" class="form-control"></textarea> <div class="help-block"><?php echo $text_note; ?></div> </div> </div> <div class="form-group required"> <div class="col-sm-12"> <label class="control-label"><?php echo $entry_rating; ?></label> <?php echo $entry_bad; ?> <input type="radio" name="rating" value="1" /> <input type="radio" name="rating" value="2" /> <input type="radio" name="rating" value="3" /> <input type="radio" name="rating" value="4" /> <input type="radio" name="rating" value="5" /> <?php echo $entry_good; ?></div> </div> <?php echo $captcha; ?> <div class="buttons clearfix"> <div class="pull-right"> <button type="button" id="button-review" data-loading-text="<?php echo $text_loading; ?>" class="btn btn-primary"><?php echo $button_continue; ?></button> </div> </div> <?php } else { ?> <?php echo $text_login; ?> <?php } ?> </form> </div> <?php } ?> </div> </div> <?php if ($column_left || $column_right) { ?> <?php $class = 'col-sm-6'; ?> <?php } else { ?> <?php $class = 'col-sm-4'; ?> <?php } ?> <div class="<?php echo $class; ?>"> <div class="btn-group"> <button type="button" data-toggle="tooltip" class="btn btn-default" title="<?php echo $button_wishlist; ?>" onclick="wishlist.add('<?php echo $product_id; ?>');"><i class="fa fa-heart"></i></button> <!--<button type="button" data-toggle="tooltip" class="btn btn-default" title="<?php echo $button_compare; ?>" onclick="compare.add('<?php echo $product_id; ?>');"><i class="fa fa-exchange"></i></button>--> </div> <h1><?php echo $heading_title; ?></h1> <ul class="list-unstyled"> <!--<?php if ($manufacturer) { ?> <li><?php echo $text_manufacturer; ?> <a href="<?php echo $manufacturers; ?>"><?php echo $manufacturer; ?></a></li> <?php } ?>--> <li><?php echo $text_model; ?> <?php echo $model; ?></li> <?php if ($reward) { ?> <li><?php echo $text_reward; ?> <?php echo $reward; ?></li> <?php } ?> <li><?php echo $text_stock; ?> <?php echo $stock; ?></li> </ul> <?php if ($price) { ?> <ul class="list-unstyled"> <?php if (!$special) { ?> <li> <h2><?php echo $price; ?></h2> </li> <?php } else { ?> <li><span style="text-decoration: line-through;"><?php echo $price; ?></span></li> <li> <h2><?php echo $special; ?></h2> </li> <?php } ?> <?php if ($tax) { ?> <li><?php echo $text_tax; ?> <?php echo $tax; ?></li> <?php } ?> <?php if ($points) { ?> <li><?php echo $text_points; ?> <?php echo $points; ?></li> <?php } ?> <?php if ($discounts) { ?> <li> <hr> </li> <?php foreach ($discounts as $discount) { ?> <li><?php echo $discount['quantity']; ?><?php echo $text_discount; ?><?php echo $discount['price']; ?></li> <?php } ?> <?php } ?> </ul> <?php } ?> <div id="product"> <?php if ($options) { ?> <hr> <h3><?php echo $text_option; ?></h3> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'select') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <select name="option[<?php echo $option['product_option_id']; ?>]" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control"> <option value=""><?php echo $text_select; ?></option> <?php foreach ($option['product_option_value'] as $option_value) { ?> <option value="<?php echo $option_value['product_option_value_id']; ?>"><?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </option> <?php } ?> </select> </div> <?php } ?> <?php if ($option['type'] == 'radio') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label"><?php echo $option['name']; ?></label> <div id="input-option<?php echo $option['product_option_id']; ?>"> <?php foreach ($option['product_option_value'] as $option_value) { ?> <div class="radio"> <label> <input type="radio" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option_value['product_option_value_id']; ?>" /> <?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </label> </div> <?php } ?> </div> </div> <?php } ?> <?php if ($option['type'] == 'checkbox') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label"><?php echo $option['name']; ?></label> <div id="input-option<?php echo $option['product_option_id']; ?>"> <?php foreach ($option['product_option_value'] as $option_value) { ?> <div class="checkbox"> <label> <input type="checkbox" name="option[<?php echo $option['product_option_id']; ?>][]" value="<?php echo $option_value['product_option_value_id']; ?>" /> <?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </label> </div> <?php } ?> </div> </div> <?php } ?> <?php if ($option['type'] == 'image') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label"><?php echo $option['name']; ?></label> <div id="input-option<?php echo $option['product_option_id']; ?>"> <?php foreach ($option['product_option_value'] as $option_value) { ?> <div class="radio"> <label> <input type="radio" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option_value['product_option_value_id']; ?>" /> <img data-src="<?php echo $option_value['image']; ?>" alt="<?php echo $option_value['name'] . ($option_value['price'] ? ' ' . $option_value['price_prefix'] . $option_value['price'] : ''); ?>" class="img-thumbnail lazyload" /> <?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </label> </div> <?php } ?> </div> </div> <?php } ?> <?php if ($option['type'] == 'text') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" placeholder="<?php echo $option['name']; ?>" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" /> </div> <?php } ?> <?php if ($option['type'] == 'textarea') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <textarea name="option[<?php echo $option['product_option_id']; ?>]" rows="5" placeholder="<?php echo $option['name']; ?>" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control"><?php echo $option['value']; ?></textarea> </div> <?php } ?> <?php if ($option['type'] == 'file') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label"><?php echo $option['name']; ?></label> <button type="button" id="button-upload<?php echo $option['product_option_id']; ?>" data-loading-text="<?php echo $text_loading; ?>" class="btn btn-default btn-block"><i class="fa fa-upload"></i> <?php echo $button_upload; ?></button> <input type="hidden" name="option[<?php echo $option['product_option_id']; ?>]" value="" id="input-option<?php echo $option['product_option_id']; ?>" /> </div> <?php } ?> <?php if ($option['type'] == 'date') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <div class="input-group date"> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" data-date-format="YYYY-MM-DD" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" /> <span class="input-group-btn"> <button class="btn btn-default" type="button"><i class="fa fa-calendar"></i></button> </span></div> </div> <?php } ?> <?php if ($option['type'] == 'datetime') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <div class="input-group datetime"> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" data-date-format="YYYY-MM-DD HH:mm" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" /> <span class="input-group-btn"> <button type="button" class="btn btn-default"><i class="fa fa-calendar"></i></button> </span></div> </div> <?php } ?> <?php if ($option['type'] == 'time') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <div class="input-group time"> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" data-date-format="HH:mm" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" /> <span class="input-group-btn"> <button type="button" class="btn btn-default"><i class="fa fa-calendar"></i></button> </span></div> </div> <?php } ?> <?php } ?> <?php } ?> <?php if ($recurrings) { ?> <hr> <h3><?php echo $text_payment_recurring ?></h3> <div class="form-group required"> <select name="recurring_id" class="form-control"> <option value=""><?php echo $text_select; ?></option> <?php foreach ($recurrings as $recurring) { ?> <option value="<?php echo $recurring['recurring_id'] ?>"><?php echo $recurring['name'] ?></option> <?php } ?> </select> <div class="help-block" id="recurring-description"></div> </div> <?php } ?> <div class="form-group"> <label class="control-label" for="input-quantity"><?php echo $entry_qty; ?></label> <input type="text" name="quantity" value="<?php echo $minimum; ?>" size="2" id="input-quantity" class="form-control" /> <input type="hidden" name="product_id" value="<?php echo $product_id; ?>" /> <br /> <button type="button" id="button-cart" data-loading-text="<?php echo $text_loading; ?>" class="btn btn-primary btn-lg btn-block"><?php echo $button_cart; ?></button> </div> <?php if ($minimum > 1) { ?> <div class="alert alert-info"><i class="fa fa-info-circle"></i> <?php echo $text_minimum; ?></div> <?php } ?> </div> <?php if ($review_status) { ?> <div class="rating"> <p> <?php for ($i = 1; $i <= 5; $i++) { ?> <?php if ($rating < $i) { ?> <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-1x"></i></span> <?php } else { ?> <span class="fa fa-stack"><i class="fa fa-star fa-stack-1x"></i><i class="fa fa-star-o fa-stack-1x"></i></span> <?php } ?> <?php } ?> <a href="" onclick="$('a[href=\'#tab-review\']').trigger('click'); return false;"><?php echo $reviews; ?></a> / <a href="" onclick="$('a[href=\'#tab-review\']').trigger('click'); return false;"><?php echo $text_write; ?></a></p> <hr> <script src="https://yastatic.net/es5-shims/0.0.2/es5-shims.min.js"></script> <script src="https://yastatic.net/share2/share.js"></script> <div class="ya-share2" data-services="vkontakte,odnoklassniki,viber,whatsapp,telegram"></div> </div> <?php } ?> </div> </div> <?php if ($products) { ?> <h3><?php echo $text_related; ?></h3> <div class="row"> <?php $i = 0; ?> <?php foreach ($products as $product) { ?> <?php if ($column_left && $column_right) { ?> <?php $class = 'col-lg-6 col-md-6 col-sm-12 col-xs-12'; ?> <?php } elseif ($column_left || $column_right) { ?> <?php $class = 'col-lg-4 col-md-4 col-sm-6 col-xs-12'; ?> <?php } else { ?> <?php $class = 'col-lg-3 col-md-3 col-sm-6 col-xs-12'; ?> <?php } ?> <div class="<?php echo $class; ?>"> <div class="product-thumb transition"> <div class="image"><a href="<?php echo $product['href']; ?>"><img data-src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" title="<?php echo $product['name']; ?>" class="img-responsive lazyload" /></a></div> <div class="caption"> <h4><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></h4> <p><?php echo $product['description']; ?></p> <?php if ($product['rating']) { ?> <div class="rating"> <?php for ($i = 1; $i <= 5; $i++) { ?> <?php if ($product['rating'] < $i) { ?> <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-1x"></i></span> <?php } else { ?> <span class="fa fa-stack"><i class="fa fa-star fa-stack-1x"></i><i class="fa fa-star-o fa-stack-1x"></i></span> <?php } ?> <?php } ?> </div> <?php } ?> <?php if ($product['price']) { ?> <p class="price"> <?php if (!$product['special']) { ?> <?php echo $product['price']; ?> <?php } else { ?> <span class="price-new"><?php echo $product['special']; ?></span> <span class="price-old"><?php echo $product['price']; ?></span> <?php } ?> <?php if ($product['tax']) { ?> <span class="price-tax"><?php echo $text_tax; ?> <?php echo $product['tax']; ?></span> <?php } ?> </p> <?php } ?> </div> <div class="button-group"> <button type="button" onclick="cart.add('<?php echo $product['product_id']; ?>', '<?php echo $product['minimum']; ?>');"><span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span> <i class="fa fa-shopping-cart"></i></button> <button type="button" data-toggle="tooltip" title="<?php echo $button_wishlist; ?>" onclick="wishlist.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-heart"></i></button> <!--<button type="button" data-toggle="tooltip" title="<?php echo $button_compare; ?>" onclick="compare.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-exchange"></i></button>--> </div> </div> </div> <?php /* if (($column_left && $column_right) && ($i % 2 == 0)) { ?> <div class="clearfix visible-md visible-sm"></div> <?php } elseif (($column_left || $column_right) && ($i % 3 == 0)) { ?> <div class="clearfix visible-md"></div> <?php } elseif ($i % 4 == 0) { ?> <div class="clearfix visible-md"></div> <?php } */ ?> <?php $i++; ?> <?php } ?> </div> <?php } ?> <?php if ($tags) { ?> <p><?php echo $text_tags; ?> <?php for ($i = 0; $i < count($tags); $i++) { ?> <?php if ($i < (count($tags) - 1)) { ?> <a href="<?php echo $tags[$i]['href']; ?>"><?php echo $tags[$i]['tag']; ?></a>, <?php } else { ?> <a href="<?php echo $tags[$i]['href']; ?>"><?php echo $tags[$i]['tag']; ?></a> <?php } ?> <?php } ?> </p> <?php } ?> <?php echo $content_bottom; ?></div> <?php echo $column_right; ?></div> </div> <script type="text/javascript"><!-- $('select[name=\'recurring_id\'], input[name="quantity"]').change(function(){ $.ajax({ url: 'index.php?route=product/product/getRecurringDescription', type: 'post', data: $('input[name=\'product_id\'], input[name=\'quantity\'], select[name=\'recurring_id\']'), dataType: 'json', beforeSend: function() { $('#recurring-description').html(''); }, success: function(json) { $('.alert, .text-danger').remove(); if (json['success']) { $('#recurring-description').html(json['success']); } } }); }); //--></script> <script type="text/javascript"><!-- $('#button-cart').on('click', function() { $.ajax({ url: 'index.php?route=checkout/cart/add', type: 'post', data: $('#product input[type=\'text\'], #product input[type=\'hidden\'], #product input[type=\'radio\']:checked, #product input[type=\'checkbox\']:checked, #product select, #product textarea'), dataType: 'json', beforeSend: function() { $('#button-cart').button('loading'); }, complete: function() { $('#button-cart').button('reset'); }, success: function(json) { $('.alert, .text-danger').remove(); $('.form-group').removeClass('has-error'); if (json['error']) { if (json['error']['option']) { for (i in json['error']['option']) { var element = $('#input-option' + i.replace('_', '-')); if (element.parent().hasClass('input-group')) { element.parent().after('<div class="text-danger">' + json['error']['option'][i] + '</div>'); } else { element.after('<div class="text-danger">' + json['error']['option'][i] + '</div>'); } } } if (json['error']['recurring']) { $('select[name=\'recurring_id\']').after('<div class="text-danger">' + json['error']['recurring'] + '</div>'); } // Highlight any found errors $('.text-danger').parent().addClass('has-error'); } if (json['success']) { $('.breadcrumb').after('<div class="alert alert-success">' + json['success'] + '<button type="button" class="close" data-dismiss="alert">×</button></div>'); $('#cart > button').html('<span id="cart-total"><i class="fa fa-shopping-cart"></i> ' + json['total'] + '</span>'); $('html, body').animate({ scrollTop: 0 }, 'slow'); $('#cart > ul').load('index.php?route=common/cart/info ul li'); } }, error: function(xhr, ajaxOptions, thrownError) { alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText); } }); }); //--></script> <script type="text/javascript"><!-- $('.date').datetimepicker({ pickTime: false }); $('.datetime').datetimepicker({ pickDate: true, pickTime: true }); $('.time').datetimepicker({ pickDate: false }); $('button[id^=\'button-upload\']').on('click', function() { var node = this; $('#form-upload').remove(); $('body').prepend('<form enctype="multipart/form-data" id="form-upload" style="display: none;"><input type="file" name="file" /></form>'); $('#form-upload input[name=\'file\']').trigger('click'); if (typeof timer != 'undefined') { clearInterval(timer); } timer = setInterval(function() { if ($('#form-upload input[name=\'file\']').val() != '') { clearInterval(timer); $.ajax({ url: 'index.php?route=tool/upload', type: 'post', dataType: 'json', data: new FormData($('#form-upload')[0]), cache: false, contentType: false, processData: false, beforeSend: function() { $(node).button('loading'); }, complete: function() { $(node).button('reset'); }, success: function(json) { $('.text-danger').remove(); if (json['error']) { $(node).parent().find('input').after('<div class="text-danger">' + json['error'] + '</div>'); } if (json['success']) { alert(json['success']); $(node).parent().find('input').attr('value', json['code']); } }, error: function(xhr, ajaxOptions, thrownError) { alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText); } }); } }, 500); }); //--></script> <script type="text/javascript"><!-- $('#review').delegate('.pagination a', 'click', function(e) { e.preventDefault(); $('#review').fadeOut('slow'); $('#review').load(this.href); $('#review').fadeIn('slow'); }); $('#button-review').on('click', function() { $.ajax({ url: 'index.php?route=product/product/write&product_id=<?php echo $product_id; ?>', type: 'post', dataType: 'json', data: $("#form-review").serialize(), beforeSend: function() { $('#button-review').button('loading'); }, complete: function() { $('#button-review').button('reset'); }, success: function(json) { $('.alert-success, .alert-danger').remove(); if (json['error']) { $('#review').after('<div class="alert alert-danger"><i class="fa fa-exclamation-circle"></i> ' + json['error'] + '</div>'); } if (json['success']) { $('#review').after('<div class="alert alert-success"><i class="fa fa-check-circle"></i> ' + json['success'] + '</div>'); $('input[name=\'name\']').val(''); $('textarea[name=\'text\']').val(''); $('input[name=\'rating\']:checked').prop('checked', false); } } }); }); $(document).ready(function() { $('.thumbnails').magnificPopup({ type:'image', delegate: 'a', gallery: { enabled:true } }); }); //--></script> <?php echo $footer; ?> Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php echo $option_value['name']; ?> </div> что это? :)) Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 4 минуты назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php echo $option_value['name']; ?> </div> что это? :)) это мои эксперименты по выводу названий опций) забыл удалить Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 1 час назад, piklas сказал: это мои эксперименты по выводу названий опций) забыл удалить <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 42 минуты назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно Спасибо большое сейчас попробую. Отпишусь. Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 (змінено) 1 час назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно Работает, но выдает все опции и размер и цвет. А возможно что бы выводил только цвет и только одно значение, например: салатовый, серый, бирюза? без повторов? Змінено 17 січня 2021 користувачем piklas Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 10 минут назад, piklas сказал: Работает, но выдает все опции и размер и цвет. А возможно что бы выводил только цвет и только одно значение, например: салатовый, серый, бирюза? без повторов? я не знаю откуда у вас повторы вот как это у меня https://23ocs.shops-market.com/index.php?route=product/product&product_id=40 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 ага. у вас размер также опцией radio сделан. тогда нужно по другому делать Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 1 минуту назад, Dimasscus сказал: я не знаю откуда у вас повторы вот как это у меня https://23ocs.shops-market.com/index.php?route=product/product&product_id=40 Повторы это из за модуля выбора опций, для связи размер + расцветка - это для связи с 1с нужно. Я вот думаю как то же можно разбить foreach и выводить только значение опции цвет? Спасибо за код. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 (змінено) 27 минут назад, piklas сказал: Повторы это из за модуля выбора опций, для связи размер + расцветка - это для связи с 1с нужно. Я вот думаю как то же можно разбить foreach и выводить только значение опции цвет? Спасибо за код. строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Змінено 17 січня 2021 користувачем Dimasscus 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 43 минуты назад, Dimasscus сказал: строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Уже почти получилось. Только так и выводит списком, все комбинации цветов, а не просто ID цветов. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 28 минут назад, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Спасибо большое за помощь, буду дальше копать. Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 18 січня 2021 Автор Share Опубліковано: 18 січня 2021 В 17.01.2021 в 23:36, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Разобрался с выводом текста <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '14' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php $str = substr($str,0,-1); ?> <?php $coloropc = implode(', ', array_unique(explode(',', $str)));?> <p> <font size="2" color="red"> <strong> В данной модели предусмотрен выбор расцветки: <?php echo $coloropc?>.</strong></font> </p> теперь проблема в том что выводимому результату пристраивается значение <div class="options"> , и вся разметка сайта рушиться. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Схожі публікації [Поддержка] OAP PRO - MULTI AJAX опции как отдельные товары с автоматической связкой 1 2 3 Автор: OcEx, 22 жовтня 2023 опции варианты (і ще %d) Теги: опции варианты комплекты серии группы модели связи ajax товары 61 відповідь 5 264 перегляди OcEx 25 вересня Модуль Уведомление о наличии товара на складе PRO Opencart 1.5* [Поддержка] 1 2 Автор: Serg9988, 10 березня 2016 уведомить уведомленние (і ще %d) Теги: уведомить уведомленние уведомить о наличии наличие отсутствие товар на складе количество опций опции остаток уедомленние 42 відповіді 5 389 переглядів artvirus 16 лютого 2017 Модуль Уведомление о наличии PRO [Поддержка] 1 2 3 4 13 Автор: Serg9988, 30 березня 2016 наличие товар (і ще %d) Теги: наличие товар остаток опции наличие опций остаток на складе продукт товар с опциями уведомить заявка статусы 324 відповіді 42 414 перегляди Rusl83 23 квітня batch [Поддержка] Универсальный массовый редактор товаров. MULTIEDIT AI 1 2 3 4 11 Автор: Sha, 16 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 253 відповіді 57 985 переглядів Sha В неділю в 21:25 batch Універсальний масовий редактор товарів. MultiEdit AI Автор: Sha, 15 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 0 коментарів 57 324 перегляди Sha 15 березня 2017 Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Налаштування та оптимізація Добавление названий опций в описании карточки товара Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 12 минут назад, piklas сказал: Отлично, а подскажите куда копать? Я так понимаю надо модифицировать файл product.tpl? В нем добавлять код который будет отвечать за вывод "Названия цвета" опции. Если не трудно то подскажите с какими переменными работать? С теми же что вьіводят опции в блоке product. Нужно смотреть на конкретном шаблоне. Если в кратце- взять тот же массив переменньіх, и поместить его в блок описания, сформировав отображение так как вам нужно Надіслати Поділитися на інших сайтах More sharing options...
piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 Шаблон дефонлтный. Спасибо за информацию буду копать. Если есть знающие люди, направьте на путь истинный. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 Только что, piklas сказал: Шаблон дефонлтный. Спасибо за информацию буду копать. Если есть знающие люди, направьте на путь истинный. Если дефолтньій то все проще. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 К сожалению нет 2-ки развернутой. Показал бьі на примере Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 17 минут назад, Dimasscus сказал: К сожалению нет 2-ки развернутой. Показал бьі на примере Вот код из файла продукт. <?php echo $header; ?> <style> .addthis_toolbox.addthis_default_style .addthis_toolbox a.addthis_button_tweet { width: 79px; } </style> <div class="container"> <ul class="breadcrumb"> <?php foreach ($breadcrumbs as $breadcrumb) { ?> <li><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a></li> <?php } ?> </ul> <div class="row"><?php echo $column_left; ?> <?php if ($column_left && $column_right) { ?> <?php $class = 'col-sm-6'; ?> <?php } elseif ($column_left || $column_right) { ?> <?php $class = 'col-sm-9'; ?> <?php } else { ?> <?php $class = 'col-sm-12'; ?> <?php } ?> <div id="content" class="<?php echo $class; ?>"><?php echo $content_top; ?> <div class="row"> <?php if ($column_left || $column_right) { ?> <?php $class = 'col-sm-6'; ?> <?php } else { ?> <?php $class = 'col-sm-8'; ?> <?php } ?> <div class="<?php echo $class; ?>"> <?php if ($thumb || $images) { ?> <ul class="thumbnails"> <?php if ($thumb) { ?> <li><a class="thumbnail" href="<?php echo $popup; ?>" title="<?php echo $heading_title; ?>"><img class="lazyload" data-src="<?php echo $thumb; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a></li> <?php } ?> <?php if ($images) { ?> <?php foreach ($images as $image) { ?> <li class="image-additional"><a class="thumbnail" href="<?php echo $image['popup']; ?>" title="<?php echo $heading_title; ?>"> <img class="lazyload" data-src="<?php echo $image['thumb']; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a></li> <?php } ?> <?php } ?> </ul> <?php } ?> <ul class="nav nav-tabs"> <li class="active"><a href="#tab-description" data-toggle="tab"><?php echo $tab_description; ?></a></li> <?php if ($attribute_groups) { ?> <li><a href="#tab-specification" data-toggle="tab"><?php echo $tab_attribute; ?></a></li> <?php } ?> <?php if ($review_status) { ?> <li><a href="#tab-review" data-toggle="tab"><?php echo $tab_review; ?></a></li> <?php } ?> </ul> <div class="tab-content"> <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php echo $option_value['name']; ?> </div> <?php if ($attribute_groups) { ?> <div class="tab-pane" id="tab-specification"> <table class="table table-bordered"> <?php foreach ($attribute_groups as $attribute_group) { ?> <thead> <tr> <td colspan="2"><strong><?php echo $attribute_group['name']; ?></strong></td> </tr> </thead> <tbody> <?php foreach ($attribute_group['attribute'] as $attribute) { ?> <tr> <td><?php echo $attribute['name']; ?></td> <td><?php echo $attribute['text']; ?></td> </tr> <?php } ?> </tbody> <?php } ?> </table> </div> <?php } ?> <?php if ($review_status) { ?> <div class="tab-pane" id="tab-review"> <form class="form-horizontal" id="form-review"> <div id="review"></div> <h2><?php echo $text_write; ?></h2> <?php if ($review_guest) { ?> <div class="form-group required"> <div class="col-sm-12"> <label class="control-label" for="input-name"><?php echo $entry_name; ?></label> <input type="text" name="name" value="" id="input-name" class="form-control" /> </div> </div> <div class="form-group required"> <div class="col-sm-12"> <label class="control-label" for="input-review"><?php echo $entry_review; ?></label> <textarea name="text" rows="5" id="input-review" class="form-control"></textarea> <div class="help-block"><?php echo $text_note; ?></div> </div> </div> <div class="form-group required"> <div class="col-sm-12"> <label class="control-label"><?php echo $entry_rating; ?></label> <?php echo $entry_bad; ?> <input type="radio" name="rating" value="1" /> <input type="radio" name="rating" value="2" /> <input type="radio" name="rating" value="3" /> <input type="radio" name="rating" value="4" /> <input type="radio" name="rating" value="5" /> <?php echo $entry_good; ?></div> </div> <?php echo $captcha; ?> <div class="buttons clearfix"> <div class="pull-right"> <button type="button" id="button-review" data-loading-text="<?php echo $text_loading; ?>" class="btn btn-primary"><?php echo $button_continue; ?></button> </div> </div> <?php } else { ?> <?php echo $text_login; ?> <?php } ?> </form> </div> <?php } ?> </div> </div> <?php if ($column_left || $column_right) { ?> <?php $class = 'col-sm-6'; ?> <?php } else { ?> <?php $class = 'col-sm-4'; ?> <?php } ?> <div class="<?php echo $class; ?>"> <div class="btn-group"> <button type="button" data-toggle="tooltip" class="btn btn-default" title="<?php echo $button_wishlist; ?>" onclick="wishlist.add('<?php echo $product_id; ?>');"><i class="fa fa-heart"></i></button> <!--<button type="button" data-toggle="tooltip" class="btn btn-default" title="<?php echo $button_compare; ?>" onclick="compare.add('<?php echo $product_id; ?>');"><i class="fa fa-exchange"></i></button>--> </div> <h1><?php echo $heading_title; ?></h1> <ul class="list-unstyled"> <!--<?php if ($manufacturer) { ?> <li><?php echo $text_manufacturer; ?> <a href="<?php echo $manufacturers; ?>"><?php echo $manufacturer; ?></a></li> <?php } ?>--> <li><?php echo $text_model; ?> <?php echo $model; ?></li> <?php if ($reward) { ?> <li><?php echo $text_reward; ?> <?php echo $reward; ?></li> <?php } ?> <li><?php echo $text_stock; ?> <?php echo $stock; ?></li> </ul> <?php if ($price) { ?> <ul class="list-unstyled"> <?php if (!$special) { ?> <li> <h2><?php echo $price; ?></h2> </li> <?php } else { ?> <li><span style="text-decoration: line-through;"><?php echo $price; ?></span></li> <li> <h2><?php echo $special; ?></h2> </li> <?php } ?> <?php if ($tax) { ?> <li><?php echo $text_tax; ?> <?php echo $tax; ?></li> <?php } ?> <?php if ($points) { ?> <li><?php echo $text_points; ?> <?php echo $points; ?></li> <?php } ?> <?php if ($discounts) { ?> <li> <hr> </li> <?php foreach ($discounts as $discount) { ?> <li><?php echo $discount['quantity']; ?><?php echo $text_discount; ?><?php echo $discount['price']; ?></li> <?php } ?> <?php } ?> </ul> <?php } ?> <div id="product"> <?php if ($options) { ?> <hr> <h3><?php echo $text_option; ?></h3> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'select') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <select name="option[<?php echo $option['product_option_id']; ?>]" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control"> <option value=""><?php echo $text_select; ?></option> <?php foreach ($option['product_option_value'] as $option_value) { ?> <option value="<?php echo $option_value['product_option_value_id']; ?>"><?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </option> <?php } ?> </select> </div> <?php } ?> <?php if ($option['type'] == 'radio') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label"><?php echo $option['name']; ?></label> <div id="input-option<?php echo $option['product_option_id']; ?>"> <?php foreach ($option['product_option_value'] as $option_value) { ?> <div class="radio"> <label> <input type="radio" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option_value['product_option_value_id']; ?>" /> <?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </label> </div> <?php } ?> </div> </div> <?php } ?> <?php if ($option['type'] == 'checkbox') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label"><?php echo $option['name']; ?></label> <div id="input-option<?php echo $option['product_option_id']; ?>"> <?php foreach ($option['product_option_value'] as $option_value) { ?> <div class="checkbox"> <label> <input type="checkbox" name="option[<?php echo $option['product_option_id']; ?>][]" value="<?php echo $option_value['product_option_value_id']; ?>" /> <?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </label> </div> <?php } ?> </div> </div> <?php } ?> <?php if ($option['type'] == 'image') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label"><?php echo $option['name']; ?></label> <div id="input-option<?php echo $option['product_option_id']; ?>"> <?php foreach ($option['product_option_value'] as $option_value) { ?> <div class="radio"> <label> <input type="radio" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option_value['product_option_value_id']; ?>" /> <img data-src="<?php echo $option_value['image']; ?>" alt="<?php echo $option_value['name'] . ($option_value['price'] ? ' ' . $option_value['price_prefix'] . $option_value['price'] : ''); ?>" class="img-thumbnail lazyload" /> <?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </label> </div> <?php } ?> </div> </div> <?php } ?> <?php if ($option['type'] == 'text') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" placeholder="<?php echo $option['name']; ?>" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" /> </div> <?php } ?> <?php if ($option['type'] == 'textarea') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <textarea name="option[<?php echo $option['product_option_id']; ?>]" rows="5" placeholder="<?php echo $option['name']; ?>" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control"><?php echo $option['value']; ?></textarea> </div> <?php } ?> <?php if ($option['type'] == 'file') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label"><?php echo $option['name']; ?></label> <button type="button" id="button-upload<?php echo $option['product_option_id']; ?>" data-loading-text="<?php echo $text_loading; ?>" class="btn btn-default btn-block"><i class="fa fa-upload"></i> <?php echo $button_upload; ?></button> <input type="hidden" name="option[<?php echo $option['product_option_id']; ?>]" value="" id="input-option<?php echo $option['product_option_id']; ?>" /> </div> <?php } ?> <?php if ($option['type'] == 'date') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <div class="input-group date"> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" data-date-format="YYYY-MM-DD" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" /> <span class="input-group-btn"> <button class="btn btn-default" type="button"><i class="fa fa-calendar"></i></button> </span></div> </div> <?php } ?> <?php if ($option['type'] == 'datetime') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <div class="input-group datetime"> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" data-date-format="YYYY-MM-DD HH:mm" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" /> <span class="input-group-btn"> <button type="button" class="btn btn-default"><i class="fa fa-calendar"></i></button> </span></div> </div> <?php } ?> <?php if ($option['type'] == 'time') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <div class="input-group time"> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" data-date-format="HH:mm" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" /> <span class="input-group-btn"> <button type="button" class="btn btn-default"><i class="fa fa-calendar"></i></button> </span></div> </div> <?php } ?> <?php } ?> <?php } ?> <?php if ($recurrings) { ?> <hr> <h3><?php echo $text_payment_recurring ?></h3> <div class="form-group required"> <select name="recurring_id" class="form-control"> <option value=""><?php echo $text_select; ?></option> <?php foreach ($recurrings as $recurring) { ?> <option value="<?php echo $recurring['recurring_id'] ?>"><?php echo $recurring['name'] ?></option> <?php } ?> </select> <div class="help-block" id="recurring-description"></div> </div> <?php } ?> <div class="form-group"> <label class="control-label" for="input-quantity"><?php echo $entry_qty; ?></label> <input type="text" name="quantity" value="<?php echo $minimum; ?>" size="2" id="input-quantity" class="form-control" /> <input type="hidden" name="product_id" value="<?php echo $product_id; ?>" /> <br /> <button type="button" id="button-cart" data-loading-text="<?php echo $text_loading; ?>" class="btn btn-primary btn-lg btn-block"><?php echo $button_cart; ?></button> </div> <?php if ($minimum > 1) { ?> <div class="alert alert-info"><i class="fa fa-info-circle"></i> <?php echo $text_minimum; ?></div> <?php } ?> </div> <?php if ($review_status) { ?> <div class="rating"> <p> <?php for ($i = 1; $i <= 5; $i++) { ?> <?php if ($rating < $i) { ?> <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-1x"></i></span> <?php } else { ?> <span class="fa fa-stack"><i class="fa fa-star fa-stack-1x"></i><i class="fa fa-star-o fa-stack-1x"></i></span> <?php } ?> <?php } ?> <a href="" onclick="$('a[href=\'#tab-review\']').trigger('click'); return false;"><?php echo $reviews; ?></a> / <a href="" onclick="$('a[href=\'#tab-review\']').trigger('click'); return false;"><?php echo $text_write; ?></a></p> <hr> <script src="https://yastatic.net/es5-shims/0.0.2/es5-shims.min.js"></script> <script src="https://yastatic.net/share2/share.js"></script> <div class="ya-share2" data-services="vkontakte,odnoklassniki,viber,whatsapp,telegram"></div> </div> <?php } ?> </div> </div> <?php if ($products) { ?> <h3><?php echo $text_related; ?></h3> <div class="row"> <?php $i = 0; ?> <?php foreach ($products as $product) { ?> <?php if ($column_left && $column_right) { ?> <?php $class = 'col-lg-6 col-md-6 col-sm-12 col-xs-12'; ?> <?php } elseif ($column_left || $column_right) { ?> <?php $class = 'col-lg-4 col-md-4 col-sm-6 col-xs-12'; ?> <?php } else { ?> <?php $class = 'col-lg-3 col-md-3 col-sm-6 col-xs-12'; ?> <?php } ?> <div class="<?php echo $class; ?>"> <div class="product-thumb transition"> <div class="image"><a href="<?php echo $product['href']; ?>"><img data-src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" title="<?php echo $product['name']; ?>" class="img-responsive lazyload" /></a></div> <div class="caption"> <h4><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></h4> <p><?php echo $product['description']; ?></p> <?php if ($product['rating']) { ?> <div class="rating"> <?php for ($i = 1; $i <= 5; $i++) { ?> <?php if ($product['rating'] < $i) { ?> <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-1x"></i></span> <?php } else { ?> <span class="fa fa-stack"><i class="fa fa-star fa-stack-1x"></i><i class="fa fa-star-o fa-stack-1x"></i></span> <?php } ?> <?php } ?> </div> <?php } ?> <?php if ($product['price']) { ?> <p class="price"> <?php if (!$product['special']) { ?> <?php echo $product['price']; ?> <?php } else { ?> <span class="price-new"><?php echo $product['special']; ?></span> <span class="price-old"><?php echo $product['price']; ?></span> <?php } ?> <?php if ($product['tax']) { ?> <span class="price-tax"><?php echo $text_tax; ?> <?php echo $product['tax']; ?></span> <?php } ?> </p> <?php } ?> </div> <div class="button-group"> <button type="button" onclick="cart.add('<?php echo $product['product_id']; ?>', '<?php echo $product['minimum']; ?>');"><span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span> <i class="fa fa-shopping-cart"></i></button> <button type="button" data-toggle="tooltip" title="<?php echo $button_wishlist; ?>" onclick="wishlist.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-heart"></i></button> <!--<button type="button" data-toggle="tooltip" title="<?php echo $button_compare; ?>" onclick="compare.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-exchange"></i></button>--> </div> </div> </div> <?php /* if (($column_left && $column_right) && ($i % 2 == 0)) { ?> <div class="clearfix visible-md visible-sm"></div> <?php } elseif (($column_left || $column_right) && ($i % 3 == 0)) { ?> <div class="clearfix visible-md"></div> <?php } elseif ($i % 4 == 0) { ?> <div class="clearfix visible-md"></div> <?php } */ ?> <?php $i++; ?> <?php } ?> </div> <?php } ?> <?php if ($tags) { ?> <p><?php echo $text_tags; ?> <?php for ($i = 0; $i < count($tags); $i++) { ?> <?php if ($i < (count($tags) - 1)) { ?> <a href="<?php echo $tags[$i]['href']; ?>"><?php echo $tags[$i]['tag']; ?></a>, <?php } else { ?> <a href="<?php echo $tags[$i]['href']; ?>"><?php echo $tags[$i]['tag']; ?></a> <?php } ?> <?php } ?> </p> <?php } ?> <?php echo $content_bottom; ?></div> <?php echo $column_right; ?></div> </div> <script type="text/javascript"><!-- $('select[name=\'recurring_id\'], input[name="quantity"]').change(function(){ $.ajax({ url: 'index.php?route=product/product/getRecurringDescription', type: 'post', data: $('input[name=\'product_id\'], input[name=\'quantity\'], select[name=\'recurring_id\']'), dataType: 'json', beforeSend: function() { $('#recurring-description').html(''); }, success: function(json) { $('.alert, .text-danger').remove(); if (json['success']) { $('#recurring-description').html(json['success']); } } }); }); //--></script> <script type="text/javascript"><!-- $('#button-cart').on('click', function() { $.ajax({ url: 'index.php?route=checkout/cart/add', type: 'post', data: $('#product input[type=\'text\'], #product input[type=\'hidden\'], #product input[type=\'radio\']:checked, #product input[type=\'checkbox\']:checked, #product select, #product textarea'), dataType: 'json', beforeSend: function() { $('#button-cart').button('loading'); }, complete: function() { $('#button-cart').button('reset'); }, success: function(json) { $('.alert, .text-danger').remove(); $('.form-group').removeClass('has-error'); if (json['error']) { if (json['error']['option']) { for (i in json['error']['option']) { var element = $('#input-option' + i.replace('_', '-')); if (element.parent().hasClass('input-group')) { element.parent().after('<div class="text-danger">' + json['error']['option'][i] + '</div>'); } else { element.after('<div class="text-danger">' + json['error']['option'][i] + '</div>'); } } } if (json['error']['recurring']) { $('select[name=\'recurring_id\']').after('<div class="text-danger">' + json['error']['recurring'] + '</div>'); } // Highlight any found errors $('.text-danger').parent().addClass('has-error'); } if (json['success']) { $('.breadcrumb').after('<div class="alert alert-success">' + json['success'] + '<button type="button" class="close" data-dismiss="alert">×</button></div>'); $('#cart > button').html('<span id="cart-total"><i class="fa fa-shopping-cart"></i> ' + json['total'] + '</span>'); $('html, body').animate({ scrollTop: 0 }, 'slow'); $('#cart > ul').load('index.php?route=common/cart/info ul li'); } }, error: function(xhr, ajaxOptions, thrownError) { alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText); } }); }); //--></script> <script type="text/javascript"><!-- $('.date').datetimepicker({ pickTime: false }); $('.datetime').datetimepicker({ pickDate: true, pickTime: true }); $('.time').datetimepicker({ pickDate: false }); $('button[id^=\'button-upload\']').on('click', function() { var node = this; $('#form-upload').remove(); $('body').prepend('<form enctype="multipart/form-data" id="form-upload" style="display: none;"><input type="file" name="file" /></form>'); $('#form-upload input[name=\'file\']').trigger('click'); if (typeof timer != 'undefined') { clearInterval(timer); } timer = setInterval(function() { if ($('#form-upload input[name=\'file\']').val() != '') { clearInterval(timer); $.ajax({ url: 'index.php?route=tool/upload', type: 'post', dataType: 'json', data: new FormData($('#form-upload')[0]), cache: false, contentType: false, processData: false, beforeSend: function() { $(node).button('loading'); }, complete: function() { $(node).button('reset'); }, success: function(json) { $('.text-danger').remove(); if (json['error']) { $(node).parent().find('input').after('<div class="text-danger">' + json['error'] + '</div>'); } if (json['success']) { alert(json['success']); $(node).parent().find('input').attr('value', json['code']); } }, error: function(xhr, ajaxOptions, thrownError) { alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText); } }); } }, 500); }); //--></script> <script type="text/javascript"><!-- $('#review').delegate('.pagination a', 'click', function(e) { e.preventDefault(); $('#review').fadeOut('slow'); $('#review').load(this.href); $('#review').fadeIn('slow'); }); $('#button-review').on('click', function() { $.ajax({ url: 'index.php?route=product/product/write&product_id=<?php echo $product_id; ?>', type: 'post', dataType: 'json', data: $("#form-review").serialize(), beforeSend: function() { $('#button-review').button('loading'); }, complete: function() { $('#button-review').button('reset'); }, success: function(json) { $('.alert-success, .alert-danger').remove(); if (json['error']) { $('#review').after('<div class="alert alert-danger"><i class="fa fa-exclamation-circle"></i> ' + json['error'] + '</div>'); } if (json['success']) { $('#review').after('<div class="alert alert-success"><i class="fa fa-check-circle"></i> ' + json['success'] + '</div>'); $('input[name=\'name\']').val(''); $('textarea[name=\'text\']').val(''); $('input[name=\'rating\']:checked').prop('checked', false); } } }); }); $(document).ready(function() { $('.thumbnails').magnificPopup({ type:'image', delegate: 'a', gallery: { enabled:true } }); }); //--></script> <?php echo $footer; ?> Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php echo $option_value['name']; ?> </div> что это? :)) Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 4 минуты назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php echo $option_value['name']; ?> </div> что это? :)) это мои эксперименты по выводу названий опций) забыл удалить Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 1 час назад, piklas сказал: это мои эксперименты по выводу названий опций) забыл удалить <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 42 минуты назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно Спасибо большое сейчас попробую. Отпишусь. Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 (змінено) 1 час назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно Работает, но выдает все опции и размер и цвет. А возможно что бы выводил только цвет и только одно значение, например: салатовый, серый, бирюза? без повторов? Змінено 17 січня 2021 користувачем piklas Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 10 минут назад, piklas сказал: Работает, но выдает все опции и размер и цвет. А возможно что бы выводил только цвет и только одно значение, например: салатовый, серый, бирюза? без повторов? я не знаю откуда у вас повторы вот как это у меня https://23ocs.shops-market.com/index.php?route=product/product&product_id=40 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 ага. у вас размер также опцией radio сделан. тогда нужно по другому делать Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 1 минуту назад, Dimasscus сказал: я не знаю откуда у вас повторы вот как это у меня https://23ocs.shops-market.com/index.php?route=product/product&product_id=40 Повторы это из за модуля выбора опций, для связи размер + расцветка - это для связи с 1с нужно. Я вот думаю как то же можно разбить foreach и выводить только значение опции цвет? Спасибо за код. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 (змінено) 27 минут назад, piklas сказал: Повторы это из за модуля выбора опций, для связи размер + расцветка - это для связи с 1с нужно. Я вот думаю как то же можно разбить foreach и выводить только значение опции цвет? Спасибо за код. строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Змінено 17 січня 2021 користувачем Dimasscus 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 43 минуты назад, Dimasscus сказал: строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Уже почти получилось. Только так и выводит списком, все комбинации цветов, а не просто ID цветов. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 28 минут назад, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Спасибо большое за помощь, буду дальше копать. Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 18 січня 2021 Автор Share Опубліковано: 18 січня 2021 В 17.01.2021 в 23:36, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Разобрался с выводом текста <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '14' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php $str = substr($str,0,-1); ?> <?php $coloropc = implode(', ', array_unique(explode(',', $str)));?> <p> <font size="2" color="red"> <strong> В данной модели предусмотрен выбор расцветки: <?php echo $coloropc?>.</strong></font> </p> теперь проблема в том что выводимому результату пристраивается значение <div class="options"> , и вся разметка сайта рушиться. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Схожі публікації [Поддержка] OAP PRO - MULTI AJAX опции как отдельные товары с автоматической связкой 1 2 3 Автор: OcEx, 22 жовтня 2023 опции варианты (і ще %d) Теги: опции варианты комплекты серии группы модели связи ajax товары 61 відповідь 5 264 перегляди OcEx 25 вересня Модуль Уведомление о наличии товара на складе PRO Opencart 1.5* [Поддержка] 1 2 Автор: Serg9988, 10 березня 2016 уведомить уведомленние (і ще %d) Теги: уведомить уведомленние уведомить о наличии наличие отсутствие товар на складе количество опций опции остаток уедомленние 42 відповіді 5 389 переглядів artvirus 16 лютого 2017 Модуль Уведомление о наличии PRO [Поддержка] 1 2 3 4 13 Автор: Serg9988, 30 березня 2016 наличие товар (і ще %d) Теги: наличие товар остаток опции наличие опций остаток на складе продукт товар с опциями уведомить заявка статусы 324 відповіді 42 414 перегляди Rusl83 23 квітня batch [Поддержка] Универсальный массовый редактор товаров. MULTIEDIT AI 1 2 3 4 11 Автор: Sha, 16 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 253 відповіді 57 985 переглядів Sha В неділю в 21:25 batch Універсальний масовий редактор товарів. MultiEdit AI Автор: Sha, 15 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 0 коментарів 57 324 перегляди Sha 15 березня 2017 Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Налаштування та оптимізація Добавление названий опций в описании карточки товара Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 Только что, piklas сказал: Шаблон дефонлтный. Спасибо за информацию буду копать. Если есть знающие люди, направьте на путь истинный. Если дефолтньій то все проще. Надіслати Поділитися на інших сайтах More sharing options...
Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 К сожалению нет 2-ки развернутой. Показал бьі на примере Надіслати Поділитися на інших сайтах More sharing options...
piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 17 минут назад, Dimasscus сказал: К сожалению нет 2-ки развернутой. Показал бьі на примере Вот код из файла продукт. <?php echo $header; ?> <style> .addthis_toolbox.addthis_default_style .addthis_toolbox a.addthis_button_tweet { width: 79px; } </style> <div class="container"> <ul class="breadcrumb"> <?php foreach ($breadcrumbs as $breadcrumb) { ?> <li><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a></li> <?php } ?> </ul> <div class="row"><?php echo $column_left; ?> <?php if ($column_left && $column_right) { ?> <?php $class = 'col-sm-6'; ?> <?php } elseif ($column_left || $column_right) { ?> <?php $class = 'col-sm-9'; ?> <?php } else { ?> <?php $class = 'col-sm-12'; ?> <?php } ?> <div id="content" class="<?php echo $class; ?>"><?php echo $content_top; ?> <div class="row"> <?php if ($column_left || $column_right) { ?> <?php $class = 'col-sm-6'; ?> <?php } else { ?> <?php $class = 'col-sm-8'; ?> <?php } ?> <div class="<?php echo $class; ?>"> <?php if ($thumb || $images) { ?> <ul class="thumbnails"> <?php if ($thumb) { ?> <li><a class="thumbnail" href="<?php echo $popup; ?>" title="<?php echo $heading_title; ?>"><img class="lazyload" data-src="<?php echo $thumb; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a></li> <?php } ?> <?php if ($images) { ?> <?php foreach ($images as $image) { ?> <li class="image-additional"><a class="thumbnail" href="<?php echo $image['popup']; ?>" title="<?php echo $heading_title; ?>"> <img class="lazyload" data-src="<?php echo $image['thumb']; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a></li> <?php } ?> <?php } ?> </ul> <?php } ?> <ul class="nav nav-tabs"> <li class="active"><a href="#tab-description" data-toggle="tab"><?php echo $tab_description; ?></a></li> <?php if ($attribute_groups) { ?> <li><a href="#tab-specification" data-toggle="tab"><?php echo $tab_attribute; ?></a></li> <?php } ?> <?php if ($review_status) { ?> <li><a href="#tab-review" data-toggle="tab"><?php echo $tab_review; ?></a></li> <?php } ?> </ul> <div class="tab-content"> <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php echo $option_value['name']; ?> </div> <?php if ($attribute_groups) { ?> <div class="tab-pane" id="tab-specification"> <table class="table table-bordered"> <?php foreach ($attribute_groups as $attribute_group) { ?> <thead> <tr> <td colspan="2"><strong><?php echo $attribute_group['name']; ?></strong></td> </tr> </thead> <tbody> <?php foreach ($attribute_group['attribute'] as $attribute) { ?> <tr> <td><?php echo $attribute['name']; ?></td> <td><?php echo $attribute['text']; ?></td> </tr> <?php } ?> </tbody> <?php } ?> </table> </div> <?php } ?> <?php if ($review_status) { ?> <div class="tab-pane" id="tab-review"> <form class="form-horizontal" id="form-review"> <div id="review"></div> <h2><?php echo $text_write; ?></h2> <?php if ($review_guest) { ?> <div class="form-group required"> <div class="col-sm-12"> <label class="control-label" for="input-name"><?php echo $entry_name; ?></label> <input type="text" name="name" value="" id="input-name" class="form-control" /> </div> </div> <div class="form-group required"> <div class="col-sm-12"> <label class="control-label" for="input-review"><?php echo $entry_review; ?></label> <textarea name="text" rows="5" id="input-review" class="form-control"></textarea> <div class="help-block"><?php echo $text_note; ?></div> </div> </div> <div class="form-group required"> <div class="col-sm-12"> <label class="control-label"><?php echo $entry_rating; ?></label> <?php echo $entry_bad; ?> <input type="radio" name="rating" value="1" /> <input type="radio" name="rating" value="2" /> <input type="radio" name="rating" value="3" /> <input type="radio" name="rating" value="4" /> <input type="radio" name="rating" value="5" /> <?php echo $entry_good; ?></div> </div> <?php echo $captcha; ?> <div class="buttons clearfix"> <div class="pull-right"> <button type="button" id="button-review" data-loading-text="<?php echo $text_loading; ?>" class="btn btn-primary"><?php echo $button_continue; ?></button> </div> </div> <?php } else { ?> <?php echo $text_login; ?> <?php } ?> </form> </div> <?php } ?> </div> </div> <?php if ($column_left || $column_right) { ?> <?php $class = 'col-sm-6'; ?> <?php } else { ?> <?php $class = 'col-sm-4'; ?> <?php } ?> <div class="<?php echo $class; ?>"> <div class="btn-group"> <button type="button" data-toggle="tooltip" class="btn btn-default" title="<?php echo $button_wishlist; ?>" onclick="wishlist.add('<?php echo $product_id; ?>');"><i class="fa fa-heart"></i></button> <!--<button type="button" data-toggle="tooltip" class="btn btn-default" title="<?php echo $button_compare; ?>" onclick="compare.add('<?php echo $product_id; ?>');"><i class="fa fa-exchange"></i></button>--> </div> <h1><?php echo $heading_title; ?></h1> <ul class="list-unstyled"> <!--<?php if ($manufacturer) { ?> <li><?php echo $text_manufacturer; ?> <a href="<?php echo $manufacturers; ?>"><?php echo $manufacturer; ?></a></li> <?php } ?>--> <li><?php echo $text_model; ?> <?php echo $model; ?></li> <?php if ($reward) { ?> <li><?php echo $text_reward; ?> <?php echo $reward; ?></li> <?php } ?> <li><?php echo $text_stock; ?> <?php echo $stock; ?></li> </ul> <?php if ($price) { ?> <ul class="list-unstyled"> <?php if (!$special) { ?> <li> <h2><?php echo $price; ?></h2> </li> <?php } else { ?> <li><span style="text-decoration: line-through;"><?php echo $price; ?></span></li> <li> <h2><?php echo $special; ?></h2> </li> <?php } ?> <?php if ($tax) { ?> <li><?php echo $text_tax; ?> <?php echo $tax; ?></li> <?php } ?> <?php if ($points) { ?> <li><?php echo $text_points; ?> <?php echo $points; ?></li> <?php } ?> <?php if ($discounts) { ?> <li> <hr> </li> <?php foreach ($discounts as $discount) { ?> <li><?php echo $discount['quantity']; ?><?php echo $text_discount; ?><?php echo $discount['price']; ?></li> <?php } ?> <?php } ?> </ul> <?php } ?> <div id="product"> <?php if ($options) { ?> <hr> <h3><?php echo $text_option; ?></h3> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'select') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <select name="option[<?php echo $option['product_option_id']; ?>]" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control"> <option value=""><?php echo $text_select; ?></option> <?php foreach ($option['product_option_value'] as $option_value) { ?> <option value="<?php echo $option_value['product_option_value_id']; ?>"><?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </option> <?php } ?> </select> </div> <?php } ?> <?php if ($option['type'] == 'radio') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label"><?php echo $option['name']; ?></label> <div id="input-option<?php echo $option['product_option_id']; ?>"> <?php foreach ($option['product_option_value'] as $option_value) { ?> <div class="radio"> <label> <input type="radio" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option_value['product_option_value_id']; ?>" /> <?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </label> </div> <?php } ?> </div> </div> <?php } ?> <?php if ($option['type'] == 'checkbox') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label"><?php echo $option['name']; ?></label> <div id="input-option<?php echo $option['product_option_id']; ?>"> <?php foreach ($option['product_option_value'] as $option_value) { ?> <div class="checkbox"> <label> <input type="checkbox" name="option[<?php echo $option['product_option_id']; ?>][]" value="<?php echo $option_value['product_option_value_id']; ?>" /> <?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </label> </div> <?php } ?> </div> </div> <?php } ?> <?php if ($option['type'] == 'image') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label"><?php echo $option['name']; ?></label> <div id="input-option<?php echo $option['product_option_id']; ?>"> <?php foreach ($option['product_option_value'] as $option_value) { ?> <div class="radio"> <label> <input type="radio" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option_value['product_option_value_id']; ?>" /> <img data-src="<?php echo $option_value['image']; ?>" alt="<?php echo $option_value['name'] . ($option_value['price'] ? ' ' . $option_value['price_prefix'] . $option_value['price'] : ''); ?>" class="img-thumbnail lazyload" /> <?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </label> </div> <?php } ?> </div> </div> <?php } ?> <?php if ($option['type'] == 'text') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" placeholder="<?php echo $option['name']; ?>" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" /> </div> <?php } ?> <?php if ($option['type'] == 'textarea') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <textarea name="option[<?php echo $option['product_option_id']; ?>]" rows="5" placeholder="<?php echo $option['name']; ?>" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control"><?php echo $option['value']; ?></textarea> </div> <?php } ?> <?php if ($option['type'] == 'file') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label"><?php echo $option['name']; ?></label> <button type="button" id="button-upload<?php echo $option['product_option_id']; ?>" data-loading-text="<?php echo $text_loading; ?>" class="btn btn-default btn-block"><i class="fa fa-upload"></i> <?php echo $button_upload; ?></button> <input type="hidden" name="option[<?php echo $option['product_option_id']; ?>]" value="" id="input-option<?php echo $option['product_option_id']; ?>" /> </div> <?php } ?> <?php if ($option['type'] == 'date') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <div class="input-group date"> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" data-date-format="YYYY-MM-DD" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" /> <span class="input-group-btn"> <button class="btn btn-default" type="button"><i class="fa fa-calendar"></i></button> </span></div> </div> <?php } ?> <?php if ($option['type'] == 'datetime') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <div class="input-group datetime"> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" data-date-format="YYYY-MM-DD HH:mm" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" /> <span class="input-group-btn"> <button type="button" class="btn btn-default"><i class="fa fa-calendar"></i></button> </span></div> </div> <?php } ?> <?php if ($option['type'] == 'time') { ?> <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>"> <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label> <div class="input-group time"> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" data-date-format="HH:mm" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" /> <span class="input-group-btn"> <button type="button" class="btn btn-default"><i class="fa fa-calendar"></i></button> </span></div> </div> <?php } ?> <?php } ?> <?php } ?> <?php if ($recurrings) { ?> <hr> <h3><?php echo $text_payment_recurring ?></h3> <div class="form-group required"> <select name="recurring_id" class="form-control"> <option value=""><?php echo $text_select; ?></option> <?php foreach ($recurrings as $recurring) { ?> <option value="<?php echo $recurring['recurring_id'] ?>"><?php echo $recurring['name'] ?></option> <?php } ?> </select> <div class="help-block" id="recurring-description"></div> </div> <?php } ?> <div class="form-group"> <label class="control-label" for="input-quantity"><?php echo $entry_qty; ?></label> <input type="text" name="quantity" value="<?php echo $minimum; ?>" size="2" id="input-quantity" class="form-control" /> <input type="hidden" name="product_id" value="<?php echo $product_id; ?>" /> <br /> <button type="button" id="button-cart" data-loading-text="<?php echo $text_loading; ?>" class="btn btn-primary btn-lg btn-block"><?php echo $button_cart; ?></button> </div> <?php if ($minimum > 1) { ?> <div class="alert alert-info"><i class="fa fa-info-circle"></i> <?php echo $text_minimum; ?></div> <?php } ?> </div> <?php if ($review_status) { ?> <div class="rating"> <p> <?php for ($i = 1; $i <= 5; $i++) { ?> <?php if ($rating < $i) { ?> <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-1x"></i></span> <?php } else { ?> <span class="fa fa-stack"><i class="fa fa-star fa-stack-1x"></i><i class="fa fa-star-o fa-stack-1x"></i></span> <?php } ?> <?php } ?> <a href="" onclick="$('a[href=\'#tab-review\']').trigger('click'); return false;"><?php echo $reviews; ?></a> / <a href="" onclick="$('a[href=\'#tab-review\']').trigger('click'); return false;"><?php echo $text_write; ?></a></p> <hr> <script src="https://yastatic.net/es5-shims/0.0.2/es5-shims.min.js"></script> <script src="https://yastatic.net/share2/share.js"></script> <div class="ya-share2" data-services="vkontakte,odnoklassniki,viber,whatsapp,telegram"></div> </div> <?php } ?> </div> </div> <?php if ($products) { ?> <h3><?php echo $text_related; ?></h3> <div class="row"> <?php $i = 0; ?> <?php foreach ($products as $product) { ?> <?php if ($column_left && $column_right) { ?> <?php $class = 'col-lg-6 col-md-6 col-sm-12 col-xs-12'; ?> <?php } elseif ($column_left || $column_right) { ?> <?php $class = 'col-lg-4 col-md-4 col-sm-6 col-xs-12'; ?> <?php } else { ?> <?php $class = 'col-lg-3 col-md-3 col-sm-6 col-xs-12'; ?> <?php } ?> <div class="<?php echo $class; ?>"> <div class="product-thumb transition"> <div class="image"><a href="<?php echo $product['href']; ?>"><img data-src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" title="<?php echo $product['name']; ?>" class="img-responsive lazyload" /></a></div> <div class="caption"> <h4><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></h4> <p><?php echo $product['description']; ?></p> <?php if ($product['rating']) { ?> <div class="rating"> <?php for ($i = 1; $i <= 5; $i++) { ?> <?php if ($product['rating'] < $i) { ?> <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-1x"></i></span> <?php } else { ?> <span class="fa fa-stack"><i class="fa fa-star fa-stack-1x"></i><i class="fa fa-star-o fa-stack-1x"></i></span> <?php } ?> <?php } ?> </div> <?php } ?> <?php if ($product['price']) { ?> <p class="price"> <?php if (!$product['special']) { ?> <?php echo $product['price']; ?> <?php } else { ?> <span class="price-new"><?php echo $product['special']; ?></span> <span class="price-old"><?php echo $product['price']; ?></span> <?php } ?> <?php if ($product['tax']) { ?> <span class="price-tax"><?php echo $text_tax; ?> <?php echo $product['tax']; ?></span> <?php } ?> </p> <?php } ?> </div> <div class="button-group"> <button type="button" onclick="cart.add('<?php echo $product['product_id']; ?>', '<?php echo $product['minimum']; ?>');"><span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span> <i class="fa fa-shopping-cart"></i></button> <button type="button" data-toggle="tooltip" title="<?php echo $button_wishlist; ?>" onclick="wishlist.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-heart"></i></button> <!--<button type="button" data-toggle="tooltip" title="<?php echo $button_compare; ?>" onclick="compare.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-exchange"></i></button>--> </div> </div> </div> <?php /* if (($column_left && $column_right) && ($i % 2 == 0)) { ?> <div class="clearfix visible-md visible-sm"></div> <?php } elseif (($column_left || $column_right) && ($i % 3 == 0)) { ?> <div class="clearfix visible-md"></div> <?php } elseif ($i % 4 == 0) { ?> <div class="clearfix visible-md"></div> <?php } */ ?> <?php $i++; ?> <?php } ?> </div> <?php } ?> <?php if ($tags) { ?> <p><?php echo $text_tags; ?> <?php for ($i = 0; $i < count($tags); $i++) { ?> <?php if ($i < (count($tags) - 1)) { ?> <a href="<?php echo $tags[$i]['href']; ?>"><?php echo $tags[$i]['tag']; ?></a>, <?php } else { ?> <a href="<?php echo $tags[$i]['href']; ?>"><?php echo $tags[$i]['tag']; ?></a> <?php } ?> <?php } ?> </p> <?php } ?> <?php echo $content_bottom; ?></div> <?php echo $column_right; ?></div> </div> <script type="text/javascript"><!-- $('select[name=\'recurring_id\'], input[name="quantity"]').change(function(){ $.ajax({ url: 'index.php?route=product/product/getRecurringDescription', type: 'post', data: $('input[name=\'product_id\'], input[name=\'quantity\'], select[name=\'recurring_id\']'), dataType: 'json', beforeSend: function() { $('#recurring-description').html(''); }, success: function(json) { $('.alert, .text-danger').remove(); if (json['success']) { $('#recurring-description').html(json['success']); } } }); }); //--></script> <script type="text/javascript"><!-- $('#button-cart').on('click', function() { $.ajax({ url: 'index.php?route=checkout/cart/add', type: 'post', data: $('#product input[type=\'text\'], #product input[type=\'hidden\'], #product input[type=\'radio\']:checked, #product input[type=\'checkbox\']:checked, #product select, #product textarea'), dataType: 'json', beforeSend: function() { $('#button-cart').button('loading'); }, complete: function() { $('#button-cart').button('reset'); }, success: function(json) { $('.alert, .text-danger').remove(); $('.form-group').removeClass('has-error'); if (json['error']) { if (json['error']['option']) { for (i in json['error']['option']) { var element = $('#input-option' + i.replace('_', '-')); if (element.parent().hasClass('input-group')) { element.parent().after('<div class="text-danger">' + json['error']['option'][i] + '</div>'); } else { element.after('<div class="text-danger">' + json['error']['option'][i] + '</div>'); } } } if (json['error']['recurring']) { $('select[name=\'recurring_id\']').after('<div class="text-danger">' + json['error']['recurring'] + '</div>'); } // Highlight any found errors $('.text-danger').parent().addClass('has-error'); } if (json['success']) { $('.breadcrumb').after('<div class="alert alert-success">' + json['success'] + '<button type="button" class="close" data-dismiss="alert">×</button></div>'); $('#cart > button').html('<span id="cart-total"><i class="fa fa-shopping-cart"></i> ' + json['total'] + '</span>'); $('html, body').animate({ scrollTop: 0 }, 'slow'); $('#cart > ul').load('index.php?route=common/cart/info ul li'); } }, error: function(xhr, ajaxOptions, thrownError) { alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText); } }); }); //--></script> <script type="text/javascript"><!-- $('.date').datetimepicker({ pickTime: false }); $('.datetime').datetimepicker({ pickDate: true, pickTime: true }); $('.time').datetimepicker({ pickDate: false }); $('button[id^=\'button-upload\']').on('click', function() { var node = this; $('#form-upload').remove(); $('body').prepend('<form enctype="multipart/form-data" id="form-upload" style="display: none;"><input type="file" name="file" /></form>'); $('#form-upload input[name=\'file\']').trigger('click'); if (typeof timer != 'undefined') { clearInterval(timer); } timer = setInterval(function() { if ($('#form-upload input[name=\'file\']').val() != '') { clearInterval(timer); $.ajax({ url: 'index.php?route=tool/upload', type: 'post', dataType: 'json', data: new FormData($('#form-upload')[0]), cache: false, contentType: false, processData: false, beforeSend: function() { $(node).button('loading'); }, complete: function() { $(node).button('reset'); }, success: function(json) { $('.text-danger').remove(); if (json['error']) { $(node).parent().find('input').after('<div class="text-danger">' + json['error'] + '</div>'); } if (json['success']) { alert(json['success']); $(node).parent().find('input').attr('value', json['code']); } }, error: function(xhr, ajaxOptions, thrownError) { alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText); } }); } }, 500); }); //--></script> <script type="text/javascript"><!-- $('#review').delegate('.pagination a', 'click', function(e) { e.preventDefault(); $('#review').fadeOut('slow'); $('#review').load(this.href); $('#review').fadeIn('slow'); }); $('#button-review').on('click', function() { $.ajax({ url: 'index.php?route=product/product/write&product_id=<?php echo $product_id; ?>', type: 'post', dataType: 'json', data: $("#form-review").serialize(), beforeSend: function() { $('#button-review').button('loading'); }, complete: function() { $('#button-review').button('reset'); }, success: function(json) { $('.alert-success, .alert-danger').remove(); if (json['error']) { $('#review').after('<div class="alert alert-danger"><i class="fa fa-exclamation-circle"></i> ' + json['error'] + '</div>'); } if (json['success']) { $('#review').after('<div class="alert alert-success"><i class="fa fa-check-circle"></i> ' + json['success'] + '</div>'); $('input[name=\'name\']').val(''); $('textarea[name=\'text\']').val(''); $('input[name=\'rating\']:checked').prop('checked', false); } } }); }); $(document).ready(function() { $('.thumbnails').magnificPopup({ type:'image', delegate: 'a', gallery: { enabled:true } }); }); //--></script> <?php echo $footer; ?> Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php echo $option_value['name']; ?> </div> что это? :)) Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 4 минуты назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php echo $option_value['name']; ?> </div> что это? :)) это мои эксперименты по выводу названий опций) забыл удалить Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 1 час назад, piklas сказал: это мои эксперименты по выводу названий опций) забыл удалить <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 42 минуты назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно Спасибо большое сейчас попробую. Отпишусь. Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 (змінено) 1 час назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно Работает, но выдает все опции и размер и цвет. А возможно что бы выводил только цвет и только одно значение, например: салатовый, серый, бирюза? без повторов? Змінено 17 січня 2021 користувачем piklas Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 10 минут назад, piklas сказал: Работает, но выдает все опции и размер и цвет. А возможно что бы выводил только цвет и только одно значение, например: салатовый, серый, бирюза? без повторов? я не знаю откуда у вас повторы вот как это у меня https://23ocs.shops-market.com/index.php?route=product/product&product_id=40 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 ага. у вас размер также опцией radio сделан. тогда нужно по другому делать Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 1 минуту назад, Dimasscus сказал: я не знаю откуда у вас повторы вот как это у меня https://23ocs.shops-market.com/index.php?route=product/product&product_id=40 Повторы это из за модуля выбора опций, для связи размер + расцветка - это для связи с 1с нужно. Я вот думаю как то же можно разбить foreach и выводить только значение опции цвет? Спасибо за код. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 (змінено) 27 минут назад, piklas сказал: Повторы это из за модуля выбора опций, для связи размер + расцветка - это для связи с 1с нужно. Я вот думаю как то же можно разбить foreach и выводить только значение опции цвет? Спасибо за код. строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Змінено 17 січня 2021 користувачем Dimasscus 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 43 минуты назад, Dimasscus сказал: строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Уже почти получилось. Только так и выводит списком, все комбинации цветов, а не просто ID цветов. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 28 минут назад, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Спасибо большое за помощь, буду дальше копать. Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 18 січня 2021 Автор Share Опубліковано: 18 січня 2021 В 17.01.2021 в 23:36, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Разобрался с выводом текста <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '14' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php $str = substr($str,0,-1); ?> <?php $coloropc = implode(', ', array_unique(explode(',', $str)));?> <p> <font size="2" color="red"> <strong> В данной модели предусмотрен выбор расцветки: <?php echo $coloropc?>.</strong></font> </p> теперь проблема в том что выводимому результату пристраивается значение <div class="options"> , и вся разметка сайта рушиться. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Схожі публікації [Поддержка] OAP PRO - MULTI AJAX опции как отдельные товары с автоматической связкой 1 2 3 Автор: OcEx, 22 жовтня 2023 опции варианты (і ще %d) Теги: опции варианты комплекты серии группы модели связи ajax товары 61 відповідь 5 264 перегляди OcEx 25 вересня Модуль Уведомление о наличии товара на складе PRO Opencart 1.5* [Поддержка] 1 2 Автор: Serg9988, 10 березня 2016 уведомить уведомленние (і ще %d) Теги: уведомить уведомленние уведомить о наличии наличие отсутствие товар на складе количество опций опции остаток уедомленние 42 відповіді 5 389 переглядів artvirus 16 лютого 2017 Модуль Уведомление о наличии PRO [Поддержка] 1 2 3 4 13 Автор: Serg9988, 30 березня 2016 наличие товар (і ще %d) Теги: наличие товар остаток опции наличие опций остаток на складе продукт товар с опциями уведомить заявка статусы 324 відповіді 42 414 перегляди Rusl83 23 квітня batch [Поддержка] Универсальный массовый редактор товаров. MULTIEDIT AI 1 2 3 4 11 Автор: Sha, 16 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 253 відповіді 57 985 переглядів Sha В неділю в 21:25 batch Універсальний масовий редактор товарів. MultiEdit AI Автор: Sha, 15 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 0 коментарів 57 324 перегляди Sha 15 березня 2017 Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Налаштування та оптимізація Добавление названий опций в описании карточки товара Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php echo $option_value['name']; ?> </div> что это? :)) Надіслати Поділитися на інших сайтах More sharing options...
piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 4 минуты назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php echo $option_value['name']; ?> </div> что это? :)) это мои эксперименты по выводу названий опций) забыл удалить Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 1 час назад, piklas сказал: это мои эксперименты по выводу названий опций) забыл удалить <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 42 минуты назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно Спасибо большое сейчас попробую. Отпишусь. Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 (змінено) 1 час назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно Работает, но выдает все опции и размер и цвет. А возможно что бы выводил только цвет и только одно значение, например: салатовый, серый, бирюза? без повторов? Змінено 17 січня 2021 користувачем piklas Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 10 минут назад, piklas сказал: Работает, но выдает все опции и размер и цвет. А возможно что бы выводил только цвет и только одно значение, например: салатовый, серый, бирюза? без повторов? я не знаю откуда у вас повторы вот как это у меня https://23ocs.shops-market.com/index.php?route=product/product&product_id=40 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 ага. у вас размер также опцией radio сделан. тогда нужно по другому делать Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 1 минуту назад, Dimasscus сказал: я не знаю откуда у вас повторы вот как это у меня https://23ocs.shops-market.com/index.php?route=product/product&product_id=40 Повторы это из за модуля выбора опций, для связи размер + расцветка - это для связи с 1с нужно. Я вот думаю как то же можно разбить foreach и выводить только значение опции цвет? Спасибо за код. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 (змінено) 27 минут назад, piklas сказал: Повторы это из за модуля выбора опций, для связи размер + расцветка - это для связи с 1с нужно. Я вот думаю как то же можно разбить foreach и выводить только значение опции цвет? Спасибо за код. строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Змінено 17 січня 2021 користувачем Dimasscus 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 43 минуты назад, Dimasscus сказал: строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Уже почти получилось. Только так и выводит списком, все комбинации цветов, а не просто ID цветов. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 28 минут назад, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Спасибо большое за помощь, буду дальше копать. Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 18 січня 2021 Автор Share Опубліковано: 18 січня 2021 В 17.01.2021 в 23:36, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Разобрался с выводом текста <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '14' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php $str = substr($str,0,-1); ?> <?php $coloropc = implode(', ', array_unique(explode(',', $str)));?> <p> <font size="2" color="red"> <strong> В данной модели предусмотрен выбор расцветки: <?php echo $coloropc?>.</strong></font> </p> теперь проблема в том что выводимому результату пристраивается значение <div class="options"> , и вся разметка сайта рушиться. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Схожі публікації [Поддержка] OAP PRO - MULTI AJAX опции как отдельные товары с автоматической связкой 1 2 3 Автор: OcEx, 22 жовтня 2023 опции варианты (і ще %d) Теги: опции варианты комплекты серии группы модели связи ajax товары 61 відповідь 5 264 перегляди OcEx 25 вересня Модуль Уведомление о наличии товара на складе PRO Opencart 1.5* [Поддержка] 1 2 Автор: Serg9988, 10 березня 2016 уведомить уведомленние (і ще %d) Теги: уведомить уведомленние уведомить о наличии наличие отсутствие товар на складе количество опций опции остаток уедомленние 42 відповіді 5 389 переглядів artvirus 16 лютого 2017 Модуль Уведомление о наличии PRO [Поддержка] 1 2 3 4 13 Автор: Serg9988, 30 березня 2016 наличие товар (і ще %d) Теги: наличие товар остаток опции наличие опций остаток на складе продукт товар с опциями уведомить заявка статусы 324 відповіді 42 414 перегляди Rusl83 23 квітня batch [Поддержка] Универсальный массовый редактор товаров. MULTIEDIT AI 1 2 3 4 11 Автор: Sha, 16 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 253 відповіді 57 985 переглядів Sha В неділю в 21:25 batch Універсальний масовий редактор товарів. MultiEdit AI Автор: Sha, 15 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 0 коментарів 57 324 перегляди Sha 15 березня 2017 Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Налаштування та оптимізація Добавление названий опций в описании карточки товара Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 1 час назад, piklas сказал: это мои эксперименты по выводу названий опций) забыл удалить <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно 1 Надіслати Поділитися на інших сайтах More sharing options...
piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 42 минуты назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно Спасибо большое сейчас попробую. Отпишусь. Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 (змінено) 1 час назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно Работает, но выдает все опции и размер и цвет. А возможно что бы выводил только цвет и только одно значение, например: салатовый, серый, бирюза? без повторов? Змінено 17 січня 2021 користувачем piklas Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 10 минут назад, piklas сказал: Работает, но выдает все опции и размер и цвет. А возможно что бы выводил только цвет и только одно значение, например: салатовый, серый, бирюза? без повторов? я не знаю откуда у вас повторы вот как это у меня https://23ocs.shops-market.com/index.php?route=product/product&product_id=40 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 ага. у вас размер также опцией radio сделан. тогда нужно по другому делать Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 1 минуту назад, Dimasscus сказал: я не знаю откуда у вас повторы вот как это у меня https://23ocs.shops-market.com/index.php?route=product/product&product_id=40 Повторы это из за модуля выбора опций, для связи размер + расцветка - это для связи с 1с нужно. Я вот думаю как то же можно разбить foreach и выводить только значение опции цвет? Спасибо за код. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 (змінено) 27 минут назад, piklas сказал: Повторы это из за модуля выбора опций, для связи размер + расцветка - это для связи с 1с нужно. Я вот думаю как то же можно разбить foreach и выводить только значение опции цвет? Спасибо за код. строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Змінено 17 січня 2021 користувачем Dimasscus 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 43 минуты назад, Dimasscus сказал: строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Уже почти получилось. Только так и выводит списком, все комбинации цветов, а не просто ID цветов. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 28 минут назад, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Спасибо большое за помощь, буду дальше копать. Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 18 січня 2021 Автор Share Опубліковано: 18 січня 2021 В 17.01.2021 в 23:36, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Разобрался с выводом текста <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '14' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php $str = substr($str,0,-1); ?> <?php $coloropc = implode(', ', array_unique(explode(',', $str)));?> <p> <font size="2" color="red"> <strong> В данной модели предусмотрен выбор расцветки: <?php echo $coloropc?>.</strong></font> </p> теперь проблема в том что выводимому результату пристраивается значение <div class="options"> , и вся разметка сайта рушиться. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Схожі публікації [Поддержка] OAP PRO - MULTI AJAX опции как отдельные товары с автоматической связкой 1 2 3 Автор: OcEx, 22 жовтня 2023 опции варианты (і ще %d) Теги: опции варианты комплекты серии группы модели связи ajax товары 61 відповідь 5 264 перегляди OcEx 25 вересня Модуль Уведомление о наличии товара на складе PRO Opencart 1.5* [Поддержка] 1 2 Автор: Serg9988, 10 березня 2016 уведомить уведомленние (і ще %d) Теги: уведомить уведомленние уведомить о наличии наличие отсутствие товар на складе количество опций опции остаток уедомленние 42 відповіді 5 389 переглядів artvirus 16 лютого 2017 Модуль Уведомление о наличии PRO [Поддержка] 1 2 3 4 13 Автор: Serg9988, 30 березня 2016 наличие товар (і ще %d) Теги: наличие товар остаток опции наличие опций остаток на складе продукт товар с опциями уведомить заявка статусы 324 відповіді 42 414 перегляди Rusl83 23 квітня batch [Поддержка] Универсальный массовый редактор товаров. MULTIEDIT AI 1 2 3 4 11 Автор: Sha, 16 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 253 відповіді 57 985 переглядів Sha В неділю в 21:25 batch Універсальний масовий редактор товарів. MultiEdit AI Автор: Sha, 15 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 0 коментарів 57 324 перегляди Sha 15 березня 2017 Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Налаштування та оптимізація Добавление названий опций в описании карточки товара Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 (змінено) 1 час назад, Dimasscus сказал: <div class="tab-pane active" id="tab-description"><?php echo $description; ?> <?php if ($options) { ?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio') { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php echo $option_value['name']; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <hr> </div> как то так. визуализируйте стилями как вам нужно Работает, но выдает все опции и размер и цвет. А возможно что бы выводил только цвет и только одно значение, например: салатовый, серый, бирюза? без повторов? Змінено 17 січня 2021 користувачем piklas Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 10 минут назад, piklas сказал: Работает, но выдает все опции и размер и цвет. А возможно что бы выводил только цвет и только одно значение, например: салатовый, серый, бирюза? без повторов? я не знаю откуда у вас повторы вот как это у меня https://23ocs.shops-market.com/index.php?route=product/product&product_id=40 Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 ага. у вас размер также опцией radio сделан. тогда нужно по другому делать Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 1 минуту назад, Dimasscus сказал: я не знаю откуда у вас повторы вот как это у меня https://23ocs.shops-market.com/index.php?route=product/product&product_id=40 Повторы это из за модуля выбора опций, для связи размер + расцветка - это для связи с 1с нужно. Я вот думаю как то же можно разбить foreach и выводить только значение опции цвет? Спасибо за код. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 (змінено) 27 минут назад, piklas сказал: Повторы это из за модуля выбора опций, для связи размер + расцветка - это для связи с 1с нужно. Я вот думаю как то же можно разбить foreach и выводить только значение опции цвет? Спасибо за код. строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Змінено 17 січня 2021 користувачем Dimasscus 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 43 минуты назад, Dimasscus сказал: строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Уже почти получилось. Только так и выводит списком, все комбинации цветов, а не просто ID цветов. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 28 минут назад, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Спасибо большое за помощь, буду дальше копать. Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 18 січня 2021 Автор Share Опубліковано: 18 січня 2021 В 17.01.2021 в 23:36, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Разобрался с выводом текста <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '14' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php $str = substr($str,0,-1); ?> <?php $coloropc = implode(', ', array_unique(explode(',', $str)));?> <p> <font size="2" color="red"> <strong> В данной модели предусмотрен выбор расцветки: <?php echo $coloropc?>.</strong></font> </p> теперь проблема в том что выводимому результату пристраивается значение <div class="options"> , и вся разметка сайта рушиться. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Схожі публікації [Поддержка] OAP PRO - MULTI AJAX опции как отдельные товары с автоматической связкой 1 2 3 Автор: OcEx, 22 жовтня 2023 опции варианты (і ще %d) Теги: опции варианты комплекты серии группы модели связи ajax товары 61 відповідь 5 264 перегляди OcEx 25 вересня Модуль Уведомление о наличии товара на складе PRO Opencart 1.5* [Поддержка] 1 2 Автор: Serg9988, 10 березня 2016 уведомить уведомленние (і ще %d) Теги: уведомить уведомленние уведомить о наличии наличие отсутствие товар на складе количество опций опции остаток уедомленние 42 відповіді 5 389 переглядів artvirus 16 лютого 2017 Модуль Уведомление о наличии PRO [Поддержка] 1 2 3 4 13 Автор: Serg9988, 30 березня 2016 наличие товар (і ще %d) Теги: наличие товар остаток опции наличие опций остаток на складе продукт товар с опциями уведомить заявка статусы 324 відповіді 42 414 перегляди Rusl83 23 квітня batch [Поддержка] Универсальный массовый редактор товаров. MULTIEDIT AI 1 2 3 4 11 Автор: Sha, 16 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 253 відповіді 57 985 переглядів Sha В неділю в 21:25 batch Універсальний масовий редактор товарів. MultiEdit AI Автор: Sha, 15 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 0 коментарів 57 324 перегляди Sha 15 березня 2017 Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Налаштування та оптимізація Добавление названий опций в описании карточки товара Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 10 минут назад, piklas сказал: Работает, но выдает все опции и размер и цвет. А возможно что бы выводил только цвет и только одно значение, например: салатовый, серый, бирюза? без повторов? я не знаю откуда у вас повторы вот как это у меня https://23ocs.shops-market.com/index.php?route=product/product&product_id=40 Надіслати Поділитися на інших сайтах More sharing options...
Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 ага. у вас размер также опцией radio сделан. тогда нужно по другому делать Надіслати Поділитися на інших сайтах More sharing options...
piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 1 минуту назад, Dimasscus сказал: я не знаю откуда у вас повторы вот как это у меня https://23ocs.shops-market.com/index.php?route=product/product&product_id=40 Повторы это из за модуля выбора опций, для связи размер + расцветка - это для связи с 1с нужно. Я вот думаю как то же можно разбить foreach и выводить только значение опции цвет? Спасибо за код. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 (змінено) 27 минут назад, piklas сказал: Повторы это из за модуля выбора опций, для связи размер + расцветка - это для связи с 1с нужно. Я вот думаю как то же можно разбить foreach и выводить только значение опции цвет? Спасибо за код. строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Змінено 17 січня 2021 користувачем Dimasscus 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 43 минуты назад, Dimasscus сказал: строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Уже почти получилось. Только так и выводит списком, все комбинации цветов, а не просто ID цветов. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 28 минут назад, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Спасибо большое за помощь, буду дальше копать. Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 18 січня 2021 Автор Share Опубліковано: 18 січня 2021 В 17.01.2021 в 23:36, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Разобрался с выводом текста <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '14' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php $str = substr($str,0,-1); ?> <?php $coloropc = implode(', ', array_unique(explode(',', $str)));?> <p> <font size="2" color="red"> <strong> В данной модели предусмотрен выбор расцветки: <?php echo $coloropc?>.</strong></font> </p> теперь проблема в том что выводимому результату пристраивается значение <div class="options"> , и вся разметка сайта рушиться. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Схожі публікації [Поддержка] OAP PRO - MULTI AJAX опции как отдельные товары с автоматической связкой 1 2 3 Автор: OcEx, 22 жовтня 2023 опции варианты (і ще %d) Теги: опции варианты комплекты серии группы модели связи ajax товары 61 відповідь 5 264 перегляди OcEx 25 вересня Модуль Уведомление о наличии товара на складе PRO Opencart 1.5* [Поддержка] 1 2 Автор: Serg9988, 10 березня 2016 уведомить уведомленние (і ще %d) Теги: уведомить уведомленние уведомить о наличии наличие отсутствие товар на складе количество опций опции остаток уедомленние 42 відповіді 5 389 переглядів artvirus 16 лютого 2017 Модуль Уведомление о наличии PRO [Поддержка] 1 2 3 4 13 Автор: Serg9988, 30 березня 2016 наличие товар (і ще %d) Теги: наличие товар остаток опции наличие опций остаток на складе продукт товар с опциями уведомить заявка статусы 324 відповіді 42 414 перегляди Rusl83 23 квітня batch [Поддержка] Универсальный массовый редактор товаров. MULTIEDIT AI 1 2 3 4 11 Автор: Sha, 16 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 253 відповіді 57 985 переглядів Sha В неділю в 21:25 batch Універсальний масовий редактор товарів. MultiEdit AI Автор: Sha, 15 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 0 коментарів 57 324 перегляди Sha 15 березня 2017 Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Налаштування та оптимізація Добавление названий опций в описании карточки товара Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich
Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 (змінено) 27 минут назад, piklas сказал: Повторы это из за модуля выбора опций, для связи размер + расцветка - это для связи с 1с нужно. Я вот думаю как то же можно разбить foreach и выводить только значение опции цвет? Спасибо за код. строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Змінено 17 січня 2021 користувачем Dimasscus 1 Надіслати Поділитися на інших сайтах More sharing options...
piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 43 минуты назад, Dimasscus сказал: строчку <?php if ($option['type'] == 'radio') { ?> замените на <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> где 1- id опции. узнать id можете в админке открыв опцию (скрин) https://clip2net.com/s/4aAugtN обновленный код <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '1' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php echo $str = substr($str,0,-1).'.';?> Уже почти получилось. Только так и выводит списком, все комбинации цветов, а не просто ID цветов. Надіслати Поділитися на інших сайтах More sharing options... Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе 1 Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 28 минут назад, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Спасибо большое за помощь, буду дальше копать. Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 18 січня 2021 Автор Share Опубліковано: 18 січня 2021 В 17.01.2021 в 23:36, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Разобрался с выводом текста <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '14' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php $str = substr($str,0,-1); ?> <?php $coloropc = implode(', ', array_unique(explode(',', $str)));?> <p> <font size="2" color="red"> <strong> В данной модели предусмотрен выбор расцветки: <?php echo $coloropc?>.</strong></font> </p> теперь проблема в том что выводимому результату пристраивается значение <div class="options"> , и вся разметка сайта рушиться. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Схожі публікації [Поддержка] OAP PRO - MULTI AJAX опции как отдельные товары с автоматической связкой 1 2 3 Автор: OcEx, 22 жовтня 2023 опции варианты (і ще %d) Теги: опции варианты комплекты серии группы модели связи ajax товары 61 відповідь 5 264 перегляди OcEx 25 вересня Модуль Уведомление о наличии товара на складе PRO Opencart 1.5* [Поддержка] 1 2 Автор: Serg9988, 10 березня 2016 уведомить уведомленние (і ще %d) Теги: уведомить уведомленние уведомить о наличии наличие отсутствие товар на складе количество опций опции остаток уедомленние 42 відповіді 5 389 переглядів artvirus 16 лютого 2017 Модуль Уведомление о наличии PRO [Поддержка] 1 2 3 4 13 Автор: Serg9988, 30 березня 2016 наличие товар (і ще %d) Теги: наличие товар остаток опции наличие опций остаток на складе продукт товар с опциями уведомить заявка статусы 324 відповіді 42 414 перегляди Rusl83 23 квітня batch [Поддержка] Универсальный массовый редактор товаров. MULTIEDIT AI 1 2 3 4 11 Автор: Sha, 16 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 253 відповіді 57 985 переглядів Sha В неділю в 21:25 batch Універсальний масовий редактор товарів. MultiEdit AI Автор: Sha, 15 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 0 коментарів 57 324 перегляди Sha 15 березня 2017 Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Налаштування та оптимізація Добавление названий опций в описании карточки товара
Dimasscus Опубліковано: 17 січня 2021 Share Опубліковано: 17 січня 2021 Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе 1 Надіслати Поділитися на інших сайтах More sharing options...
piklas Опубліковано: 17 січня 2021 Автор Share Опубліковано: 17 січня 2021 28 минут назад, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Спасибо большое за помощь, буду дальше копать. Надіслати Поділитися на інших сайтах More sharing options... piklas Опубліковано: 18 січня 2021 Автор Share Опубліковано: 18 січня 2021 В 17.01.2021 в 23:36, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Разобрался с выводом текста <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '14' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php $str = substr($str,0,-1); ?> <?php $coloropc = implode(', ', array_unique(explode(',', $str)));?> <p> <font size="2" color="red"> <strong> В данной модели предусмотрен выбор расцветки: <?php echo $coloropc?>.</strong></font> </p> теперь проблема в том что выводимому результату пристраивается значение <div class="options"> , и вся разметка сайта рушиться. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1 Перейти до списку тем Схожі публікації [Поддержка] OAP PRO - MULTI AJAX опции как отдельные товары с автоматической связкой 1 2 3 Автор: OcEx, 22 жовтня 2023 опции варианты (і ще %d) Теги: опции варианты комплекты серии группы модели связи ajax товары 61 відповідь 5 264 перегляди OcEx 25 вересня Модуль Уведомление о наличии товара на складе PRO Opencart 1.5* [Поддержка] 1 2 Автор: Serg9988, 10 березня 2016 уведомить уведомленние (і ще %d) Теги: уведомить уведомленние уведомить о наличии наличие отсутствие товар на складе количество опций опции остаток уедомленние 42 відповіді 5 389 переглядів artvirus 16 лютого 2017 Модуль Уведомление о наличии PRO [Поддержка] 1 2 3 4 13 Автор: Serg9988, 30 березня 2016 наличие товар (і ще %d) Теги: наличие товар остаток опции наличие опций остаток на складе продукт товар с опциями уведомить заявка статусы 324 відповіді 42 414 перегляди Rusl83 23 квітня batch [Поддержка] Универсальный массовый редактор товаров. MULTIEDIT AI 1 2 3 4 11 Автор: Sha, 16 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 253 відповіді 57 985 переглядів Sha В неділю в 21:25 batch Універсальний масовий редактор товарів. MultiEdit AI Автор: Sha, 15 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 0 коментарів 57 324 перегляди Sha 15 березня 2017 Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку
piklas Опубліковано: 18 січня 2021 Автор Share Опубліковано: 18 січня 2021 В 17.01.2021 в 23:36, Dimasscus сказал: Ну что я могу сказать- значит у вас не дефолт. А по фотографии гадать- такое сеюе Разобрался с выводом текста <?php if ($options) { ?> <?php $str = '';?> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'radio' && $option['option_id'] == '14' ) { ?> <?php foreach ($option['product_option_value'] as $option_value) { ?> <?php $str .= $option_value['name'].','; ?> <?php } ?> <?php } ?> <?php } ?> <?php } ?> <?php $str = substr($str,0,-1); ?> <?php $coloropc = implode(', ', array_unique(explode(',', $str)));?> <p> <font size="2" color="red"> <strong> В данной модели предусмотрен выбор расцветки: <?php echo $coloropc?>.</strong></font> </p> теперь проблема в том что выводимому результату пристраивается значение <div class="options"> , и вся разметка сайта рушиться. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 1
Recommended Posts