-
Публікації
267 -
З нами
-
Відвідування
Тип публікації
Профілі
Форум
Маркетплейс
Статті
FAQ
Наші новини
Магазин
Блоги
module__dplus_manager
Усі публікації користувача Dimusik
-
Всем привет,нужно изменить шаблон карточек товаров в новинках, подскажите в каком файле twig это нужно делать? спасибо
-
Просто когда у человека много знаний и он хорошо разбирается в чем то, он перестает замечать простые вещи и всякие мелочи (а у меня как раз такая ситуация была) и думает что проблема в чем то крупном и более сложном кроется. Мне от вас всего то и нужно было в данной задаче ваше знание PHP. НО НИКТО МЕНЯ НЕ УСЛЫШАЛ СОВЕТ!черт кроется в мелочах обращайте внимание чаще на мелочи прежде чем что то крупное ворочать!!
-
Всё разобрался, говорил же надо проверить массивы и циклы вот правильное решение кому может поможет в category.TWIG добавляем вот это <div class="cart-button"> {% if product.price and false %} <div class="price"> {% if not product.special %} {{ product.price }} {% else %} <span class="price-new">{{ product.special }}</span> <span class="price-old">{{ product.price }}</span> {% endif %} {% if product.tax %} <span class="price-tax">{{ text_tax }} {{ product.tax }}</span> {% endif %} </div> {% endif %} <ul class="see"> {% if product.options %} {% set i = 1 %} {% for option in product.options %} {% if option.type == 'radio' %} {% for option_value in option.product_option_value %} <li class="s{{ product.product_id }}{{ i }}" style=""> <input type="hidden" name="quantity" size="2" value="1" /> <input type="hidden" name="product_id" size="2" value="{{ product.product_id }}" /> <input type="hidden" name="option[{{ option.product_option_id }}]" value="{{ option_value.product_option_value_id }}" /> <span class="price_box"> <span class="weight">{{ option_value.name }}</span> {% if option_value.price %} <span class="price">{{ option_value.price }}р.</span> {% endif %} </span> <a class="btn-add-cart" onclick="ser('s{{ product.product_id }}{{ i }}')">Купить</i></a> </li> {% set i = i + 1 %} {% endfor %} {% endif %} {% endfor %} {% else %} <li><span class="price_box"><span class="price">{{ product.price }}</span></span> <a class="btn-add-cart" onclick="cart.add('{{ product.product_id }}', '{{ product.minimum }}');">Купить (неправильно)</a></li> {% endif %} </ul> <div class="clearr"></div> </div> </div> а в контроллере category.php вот это внутри цикла result создаем переменные чтобы они не затерались foreach ($results as $result) { $product_option_value=array(); $options_help=array(); ------------------------------------------------ Дальше вот это $options = $this->model_catalog_product->getProductOptions($result['product_id']); foreach ($options as $option) { foreach ($option['product_option_value'] as $option_value) { $product_option_value[] = array( 'product_option_value_id' => $option_value['product_option_value_id'], 'option_value_id' => $option_value['option_value_id'], 'name' => $option_value['name'], 'image' => $this->model_tool_image->resize($option_value['image'], 50, 50), 'price' => (int)$option_value['price'] ); //echo $option_value['price']; } foreach ($product_option_value as $option_value) { echo ' пп'.$option_value['price']; } //echo count($option['product_option_value']); $options_help[] = array( 'product_option_id' => $option['product_option_id'], 'product_option_value' => $product_option_value, 'option_id' => $option['option_id'], 'name' => $option['name'], 'type' => $option['type'], 'value' => $option['value'], 'required' => $option['required'] ); } $options=$options_help; foreach ($options as $option) { foreach ($option['product_option_value'] as $option_value) { echo ' пп'.$option_value['price']; } } $data['products'][] = array( 'product_id' => $result['product_id'], 'options' => $options, 'thumb' => $image, 'name' => $result['name'], 'description' => utf8_substr(trim(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8'))), 0, $this->config->get('theme_' . $this->config->get('config_theme') . '_product_description_length')) . '..', 'price' => $price, 'special' => $special, 'tax' => $tax, 'minimum' => $result['minimum'] > 0 ? $result['minimum'] : 1, 'rating' => $result['rating'], 'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url) ); } говорил же вам посмотрите циклы как работают!просто пропарсить надо было посмотреть где что затерается!!! ВСЕМ СПАСИБО - УДАЧИ ВСЕМ И КРЕПКОГО ЗДОРОВЬЯ! ТЕМУ МОЖНО ЗАКРЫВАТЬ!!
-
я проверил цикл как работает, оказывается не изменяются просто в цикле почему то цены не округляются к (int) вот что выводит пп1500.0000 пп2000.0000 пп2500.0000 пп1200.0000 пп1400.0000 пп1600.0000 вот потому мы и получаем нули потому что циклы как то неправильно присваивают значения ЭХ ЗНАЛ БЫ Я PHP досконально
-
<div class="cart-button"> {% if product.price and false %} <div class="price"> {% if not product.special %} {{ product.price }} {% else %} <span class="price-new">{{ product.special }}</span> <span class="price-old">{{ product.price }}</span> {% endif %} {% if product.tax %} <span class="price-tax">{{ text_tax }} {{ product.tax }}</span> {% endif %} </div> {% endif %} <ul class="see"> {% if product.options %} {% set i = 1 %} {% for option in product.options %} {% if option.type == 'radio' %} {% for option_value in me_options %} <li class="s{{ product.product_id }}{{ i }}" style=""> <input type="hidden" name="quantity" size="2" value="1" /> <input type="hidden" name="product_id" size="2" value="{{ product.product_id }}" /> <input type="hidden" name="option[{{ option.product_option_id }}]" value="{{ option_value.product_option_value_id }}" /> <span class="price_box"> <span class="weight">{{ option_value.name }}</span> {% if option_value.price %} <span class="price">{{ option_value.price }}р.</span> {% endif %} </span> <a class="btn-add-cart" onclick="ser('s{{ product.product_id }}{{ i }}')">Купить</i></a> </li> {% set i = i + 1 %} {% endfor %} {% endif %} {% endfor %} {% else %} <li><span class="price_box"><span class="price">{{ product.price }}</span></span> <a class="btn-add-cart" onclick="cart.add('{{ product.product_id }}', '{{ product.minimum }}');">Купить (неправильно)</a></li> {% endif %} </ul> <div class="clearr"></div> </div> </div>
-
вот {{ header }} <div class="content-block"> <ul class="breadcrumb"> {% for breadcrumb in breadcrumbs %} <li><a href="{{ breadcrumb.href }}">{{ breadcrumb.text }}</a></li> {% endfor %} </ul> <div class="content"> {{ column_left }} {% if column_left and column_right %} {% set class = 'product-card product-card-s' %} {% elseif column_left or column_right %} {% set class = 'product-card product-card-l' %} {% else %} {% set class = 'product-card' %} {% endif %} <div id="product-category" class="content-center"> {{ content_top }} <h1 class="heading-title">{{ heading_title }}</h1> {% if thumb or description %} <div class="thumb-description-block"> {% if thumb %} <div class="thumbs"><img src="{{ thumb }}" alt="{{ heading_title }}" title="{{ heading_title }}" class="img-thumbnail" /></div> {% endif %} {% if description %} <div class="description">{{ description }}</div> {% endif %}</div> {% endif %} {% if categories %} <div class="col-sm-12"> <div> <h3>{{ text_refine }}</h3> </div> <div style="text-align: center;"> <div class="row"> {% set i = 0 %} {% for category in categories %} <div class="col-sm-2 col-xs-6 sw-item" style="margin-bottom: 10px;"> <div style="background-color:#cbcbcb;margin-bottom:-5px"> <a class="sw-image" style="width:auto;display: block" href="{{ category.href }}"><img src="{{ category.thumb }}" alt="{{ category.name }}" /></a> </div> <div id="divCategName" style="height:70px;background-color:#cbcbcb"> <a class="sw-title" href="{{ category.href }}" style="font-weight: 700;display:block;text-align:center;height:65px;overflow:hidden;padding: 15px">{{ category.name }}</a> </div> </div> {% set i = i+1 %} {% if i%6==0 %} <div class="clearfix"></div> {% endif %} {% endfor %} </div> </div> </div> {% endif %} {% if 2+2==5 %} <h3 class="cat-title">{{ text_refine }}</h3> <div class="category-block"> <ul> {% for category in categories %} <li><a href="{{ category.href }}">{{ category.name }}</a></li> {% endfor %} </ul> </div> {% endif %} {% if products %} <div class="sort-block"> <div class="sort"> <div class="form-group input-group input-group-sm"> <label class="input-group-addon" for="input-sort">{{ text_sort }}</label> <select id="input-sort" class="form-control" onchange="location = this.value;"> {% for sorts in sorts %} {% if sorts.value == '%s-%s'|format(sort, order) %} <option value="{{ sorts.href }}" selected="selected">{{ sorts.text }}</option> {% else %} <option value="{{ sorts.href }}">{{ sorts.text }}</option> {% endif %} {% endfor %} </select> </div> </div> <div class="sort"> <div class="form-group input-group input-group-sm"> <label class="input-group-addon" for="input-limit">{{ text_limit }}</label> <select id="input-limit" class="form-control" onchange="location = this.value;"> {% for limits in limits %} {% if limits.value == limit %} <option value="{{ limits.href }}" selected="selected">{{ limits.text }}</option> {% else %} <option value="{{ limits.href }}">{{ limits.text }}</option> {% endif %} {% endfor %} </select> </div> </div> </div> <div class="product-wrapp"> {% for product in products %} <div class="{{class}}"> <p> {{product.options.size}} </p> <div class="btn-top"> <button type="button" data-toggle="tooltip" title="{{ button_wishlist }}" onclick="wishlist.add('{{ product.product_id }}');"><i class="fa fa-heart"></i></button> <button type="button" data-toggle="tooltip" title="{{ button_compare }}" onclick="compare.add('{{ product.product_id }}');"><i class="fa fa-exchange"></i></button> </div> <div class="image"><a href="{{ product.href }}"><img src="{{ product.thumb }}" alt="{{ product.name }}" title="{{ product.name }}" class="img-responsive" /></a></div> <div class="caption"> <h4 class="product-name"><a href="{{ product.href }}">{{ product.name }}</a></h4> </div> <div class="cart-button"> {% if product.price and false %} <div class="price"> {% if not product.special %} {{ product.price }} {% else %} <span class="price-new">{{ product.special }}</span> <span class="price-old">{{ product.price }}</span> {% endif %} {% if product.tax %} <span class="price-tax">{{ text_tax }} {{ product.tax }}</span> {% endif %} </div> {% endif %} <ul class="see"> {% if product.options %} {% set i = 1 %} {% for option in product.options %} {% if option.type == 'radio' %} {% for option_value in me_options %} <li class="s{{ product.product_id }}{{ i }}" style=""> <input type="hidden" name="quantity" size="2" value="1" /> <input type="hidden" name="product_id" size="2" value="{{ product.product_id }}" /> <input type="hidden" name="option[{{ option.product_option_id }}]" value="{{ option_value.product_option_value_id }}" /> <span class="price_box"> <span class="weight">{{ option_value.name }}</span> {% if option_value.price %} <span class="price">{{ option_value.price }}р.</span> {% endif %} </span> <a class="btn-add-cart" onclick="ser('s{{ product.product_id }}{{ i }}')">Купить</i></a> </li> {% set i = i + 1 %} {% endfor %} {% endif %} {% endfor %} {% else %} <li><span class="price_box"><span class="price">{{ product.price }}</span></span> <a class="btn-add-cart" onclick="cart.add('{{ product.product_id }}', '{{ product.minimum }}');">Купить (неправильно)</a></li> {% endif %} </ul> <div class="clearr"></div> </div> </div> {% endfor %} </div> <div class="pagination-block"> <div class="paginations">{{ pagination }}</div> <div class="results-text">{{ results }}</div> </div> {% endif %} {% if not categories and not products %} <p>{{ text_empty }}</p> <div class="buttons"> <div class="pull-right"><a href="{{ continue }}" class="btn btn-primary">{{ button_continue }}</a></div> </div> {% endif %} </div> {{ column_right }} </div> {{ content_bottom }} </div> {{ footer }} <script type="text/javascript"><!-- function plusQty(q) { var input=$(q).parent().find('input[type=text]'); if (isNaN(input.val())) { input.val(1); } input.val(parseInt(input.val())+1); input.change(); } function minusQty(q) { var input=$(q).parent().find('input[type=text]'); if (isNaN(input.val())) { input.val(1); } if ($(input).val()>1) { $(input).val(parseInt($(input).val())-1); } input.change(); } function ser(id,qu) { $.ajax({ url: 'index.php?route=checkout/cart/add', type: 'post', data: $('.' + id + ' input[type=\'hidden\']'), dataType: 'json', success: function(json) { $('.success, .warning, .attention, information, .error').remove(); if (json['error']) { if (json['error']['option']) { for (i in json['error']['option']) { $('#option-' + i).after('<span class="error">' + json['error']['option'][i] + '</span>'); } } } if (json['success']) { $('.breadcrumb').after('<div class="event-block"><i class="fa fa-check-circle"></i>' + json['success'] + '</div>'); $('#cart > a').html('<span id="cart-total"><i class="fa fa-shopping-bag" aria-hidden="true"></i> ' + json['total'] + '</span>'); $('#cart ul').load('index.php?route=common/cart/info ul li'); } } }); } //--></script>
-
Последний вариант тоже не работает выводит все сразу А почему нельзя перезаписать тот же масив что мы получаем отсюда $options = $this->model_catalog_product->getProductOptions($result['product_id']); Зачем придумывать какие ME_OPTION не пойму, в PHP что так нельзя делать что ли пройтись по масиву изменить некоторые значения и записать опять масив?
-
а как правильно обьявить переменную? и пройтись по масивам по этим всем??Помогите реализовать этот алгоритм плиз $countt=0; foreach ($options as $option) { foreach ($option['product_option_value'] as $option_value) { $countt++; $option['product_option_value'][countt] = array( 'product_option_value_id' => $option_value['product_option_value_id'], 'option_value_id' => $option_value['option_value_id'], 'name' => $option_value['name'], 'image' => $this->model_tool_image->resize($option_value['image'], 50, 50), 'price' => (int)$option_value['price']//, //'price_prefix' => $option_value['price_prefix'] ); } $options[countt] = array( 'product_option_id' => $option['product_option_id'], 'product_option_value' => $option['product_option_value'], 'option_id' => $option['option_id'], 'name' => $option['name'], 'type' => $option['type'], 'value' => $option['value'], 'required' => $option['required'] ); } echo (count($options));