Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Сделать список цен опций без нулей после точки


Recommended Posts

Всё разобрался, говорил же надо проверить массивы и циклы

 

вот правильное решение кому может поможет

в  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)
				);
			}

 

 

 

55555555555.png

 

говорил же вам посмотрите циклы как работают!просто пропарсить надо было посмотреть где что затерается!!!

 

ВСЕМ СПАСИБО - УДАЧИ ВСЕМ И КРЕПКОГО ЗДОРОВЬЯ!

ТЕМУ МОЖНО ЗАКРЫВАТЬ!!

Змінено користувачем Dimusik
  • +1 1
Надіслати
Поділитися на інших сайтах


5 minutes ago, Venter said:

я чет сам затупил 

Просто когда у человека много знаний и он хорошо разбирается в чем то, он перестает замечать простые вещи и всякие мелочи (а у меня как раз такая ситуация была) и думает что проблема в чем то крупном и более сложном кроется.

Мне от вас всего то и нужно было в данной задаче ваше знание PHP. НО НИКТО МЕНЯ НЕ УСЛЫШАЛ

СОВЕТ!черт кроется в мелочах

 

обращайте внимание чаще на мелочи прежде чем что то крупное ворочать!!

Змінено користувачем Dimusik
Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.