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

Вопрос по OpenCart 2


Recommended Posts

Подскажите как разделить цикл foreach что бы он выводил по 3 товара в ряд?

У меня просто ужасная верстка досталась от верстальщика и каждые 3 товара в ней должны быть в отдельном диве

В моем случае это див <div class="goodsWrapperRow">

 

Делаю так:

<?php foreach (array_chunk($products, ceil(count($products) / 3)) as $product) { ?>
						<div class="goodsWrapperRow">
						
						<?php foreach ($products as $product) { ?>
						<div class="goodsSliderItem">
						ТОВАР
						</div>	
						 <?php } ?>
						 
						</div>
<?php } ?>

Не работает(

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


3 минуты назад, losthill сказал:

Мб проще добавить </div><div>после каждого 3-го чтобы разделить


        <?php foreach ($products as $key => $product) { ?>

<?php if ($key == '3') { ?>
</div><div>
<?php } ?>

 

можно вместе с моим кодом пример как это будет выглядеть? буду оч благодарен

Надіслати
Поділитися на інших сайтах


<?php 
$i=0; $is=3; 
foreach ($products as $product){ 
?>
	<div class="goodsSliderItem">
  		ТОВАР
	</div>	
<?php 
if($i==$is){
	$is+3;
?> 
</div><div class="goodsWrapperRow">	//тут закрывающие и открывающие теги
<?php
}
$i++;
} ?>
 </div>

 

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

<?php foreach (array_chunk($products, ceil(count($products) / 3)) as $product) { ?>
	<div class="goodsWrapperRow">
		<?php foreach ($product as $p) { ?>
		<div class="goodsSliderItem">
			ТОВАР
		</div>	
		<?php } ?>
	</div>
<?php } ?>

 

Надіслати
Поділитися на інших сайтах

9 минут назад, Pavel666 сказал:

тут закрывающие и открывающие теги

а где

<div class="goodsWrapperRow">

?

Надіслати
Поділитися на інших сайтах

13 минут назад, fanatic сказал:

<?php foreach (array_chunk($products, ceil(count($products) / 3)) as $product) { ?>
	<div class="goodsWrapperRow">
		<?php foreach ($product as $p) { ?>
		<div class="goodsSliderItem">
			ТОВАР
		</div>	
		<?php } ?>
	</div>
<?php } ?>

 

Не сработало решение, на каких то страницах категорий вывело по 2 товара в ряд и на каких то по 1 в ряд(( 

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


13 минут назад, Pavel666 сказал:

<?php 
$i=0; $is=3; 
foreach ($products as $product){ 
?>
	<div class="goodsSliderItem">
  		ТОВАР
	</div>	
<?php 
if($i==$is){
	$is+3;
?> 
</div><div class="goodsWrapperRow">	//тут закрывающие и открывающие теги
<?php
}
$i++;
} ?>
 </div>

 

не сработало( 

Надіслати
Поділитися на інших сайтах


Может оно привязано к количеству товаров на странице по умолчанию? У меня по умолчанию в админке указано выводить по 6 товаров на странице

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


42 минуты назад, ilerok сказал:

<?php foreach (array_chunk($products, ceil(count($products) / 3)) as $product) { ?>

<?php foreach (array_chunk($products, 3) as $product) { ?>

 

Надіслати
Поділитися на інших сайтах

2 минуты назад, fanatic сказал:

<?php foreach (array_chunk($products, 3) as $product) { ?>

 

сделал так, задублировало товары, один и тот же товар выводится в разных рядах

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


Все начинания правильны, но не до конца.

<?php foreach (array_chunk($products,  3) as $products_3) { ?>
    <div class="goodsWrapperRow">
    <?php foreach ($products_3 as $product) { ?>
      <div class="goodsSliderItem">
        Товар:
      </div>
    <?php } ?>
    </div>
<?php } ?>

 

  • +1 1
Надіслати
Поділитися на інших сайтах

Только что, ibond сказал:

Все начинания правильны, но не до конца.


<?php foreach (array_chunk($products,  3) as $products_3) { ?>
    <div class="goodsWrapperRow">
    <?php foreach ($products_3 as $product) { ?>
      <div class="goodsSliderItem">
        Товар:
      </div>
    <?php } ?>
    </div>
<?php } ?>

 

Сработало!)))) Спасибо!!!!! Ставлю плюсик)

Надіслати
Поділитися на інших сайтах


Только что, fanatic сказал:

у вас что-то с версткой

этот код


<?php foreach (array_chunk($products, 3) as $product) { ?>
	<div class="goodsWrapperRow">
		<?php foreach ($product as $p) { ?>
		<div class="goodsSliderItem">
			ТОВАР
		</div>	
		<?php } ?>
	</div>
<?php } ?>

вылодит в каждом   


<div class="goodsWrapperRow">

по  3    

 


<div class="goodsSliderItem">

arr_cank.png

да видно что то было с версткой, но уже решил вопрос

Надіслати
Поділитися на інших сайтах


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

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

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

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

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

Вхід

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

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

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

Important Information

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