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

rudoy24

  • Захожу иногда
  • 51
  • 1 / 0
За вывод списка подкатегорий на странице категории отвечает "/components/com_jshopping/templates/default/category/category_default.php" и код:
Код
<?php if (count($this->categories)){ ?>
<table class = "jshop list_category">
    <?php foreach($this->categories as $k=>$category){?>
        <?php if ($k%$this->count_category_to_row==0) print "<tr>"; ?>
        <td class="jshop_categ" width="<?php print (100/$this->count_category_to_row)?>%">
          <table class = "category">
            <tr>
            <td class="image">
                <a href = "<?php print $category->category_link;?>"><img class="jshop_img" src="<?php print $this->image_category_path;?>/<?php if ($category->category_image) print $category->category_image; else print $this->noimage;?>" alt="<?php print htmlspecialchars($category->name)?>" /></a>
            </td>
            </tr>
            <tr>
            <td class="category_name">
               <a class = "product_link catid-<?php print $category->category_id?>" href = "<?php print $category->category_link?>"><?php print $category->name?></a>
               <p class = "category_short_description"><?php print $category->short_description?></p>
            </td>           
            </tr>
           </table>
        </td>
        <?php if ($k%$this->count_category_to_row==$this->count_category_to_row-1) print '</tr>'; ?>
<?php }?>
        <?php if ($k%$this->count_category_to_row!=$this->count_category_to_row-1) print '</tr>'; ?>
</table>
<?php } ?>

Можно ли дописать код выборки списка подкатегорий так, что бы можно было исключать и не выводить некоторые подкатегории по id?
« Последнее редактирование: 13.10.2017, 20:38:31 от rudoy24 »
*

rudoy24

  • Захожу иногда
  • 51
  • 1 / 0
Прописал условие:
Код
<?php $catid=array(143,31,14);  if (!in_array($category->category_id, $catid)) { ?> ...<?php } ?>
после:
Код
<?php if ($k%$this->count_category_to_row==0) print "<tr>"; ?>
И категории прописанные в массиве не выводит - ТО ЕСТЬ УСЛОВИЕ ДЕЛАЕТ ТО ЧТО НУЖНО, но появляться проблема с формированием <tr>, а именно, если раньше выводило:
Код
<tr>
   <td>id 178</td>
   <td>id 13</td>
   <td>id 143</td>
</tr>
<tr>
   <td>id 31</td>
   <td>id 14</td>
   <td>id 45</td>
</tr>
<tr>
   <td>id 77</td>
   <td>id 23</td>
   <td>id 111</td>
</tr>

то сейчас выводит без категорий с id 143,31,14, которые прописаны в условии такой:
Код
<tr>
   <td>id 178</td>
   <td>id 13</td>
</tr>
<tr>
   <td>id 45</td>
</tr>
<tr>
   <td>id 77</td>
   <td>id 23</td>
   <td>id 111</td>
</tr>

А нужно что бы выводило так:
Код
<tr>
   <td>id 178</td>
   <td>id 13</td>
   <td>id 45</td>
</tr>
<tr>
   <td>id 77</td>
   <td>id 23</td>
   <td>id 111</td>
</tr>
« Последнее редактирование: 13.10.2017, 19:37:03 от rudoy24 »
*

vipiusss

  • Гуру
  • 5748
  • 343 / 10
  • Скайп: renor_
<?php if ($option == 'com_jshopping' && $controller == 'category' &&
in_array($category_id, array(1,2,3,4,5))
): ?>
*************
<?php endif ?>

1,2,3,4,5- id категорий (или подкатегорий).

Попробуйте так массив сформировать.

Спойлер
[свернуть]
« Последнее редактирование: 13.10.2017, 19:25:49 от vipiusss »
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

rudoy24

  • Захожу иногда
  • 51
  • 1 / 0
vipiusss => Не работает ваш код , думаю так как $option и $controller еще определить нужно наверное. Но суть не в том пример рабочего условия я уже написал, а вот как заставить "<tr>" правильно формировать?
*

vipiusss

  • Гуру
  • 5748
  • 343 / 10
  • Скайп: renor_
Не работает ваш код
1.Верно, определить надо. И он работает, кстати.
2.Наберитесь терпения, ответят.

Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

rudoy24

  • Захожу иногда
  • 51
  • 1 / 0
Наверное нужно условие для переменной "$k" прописать, ведь "<?php if ($k%$this->count_category_to_row==0) print "<tr>"; ?>" отвечает за добавление "<tr>".
Да и переписал 1 код, так как он на div-ах был.
« Последнее редактирование: 13.10.2017, 20:39:37 от rudoy24 »
*

effrit

  • Легенда
  • 8994
  • 985 / 9
  • effrit.com
смысл в том, что сейчас у вас счетчик категорий в ряду ВСЕГДА приращивается, даже если категория пропускается, а надо чтобы увеличивался только, если категория опубликована

так что нужно просто ввести свой счетчик вот для этих условий
Код
$k%$this->count_category_to_row

т.е ввести
Код
$count=0;
до цикла foreach
в цикле в конце вашего дописанного условия делать
Код
$count++;
ну и условия
Код
$k%$this->count_category_to_row
на
Код
$count%$this->count_category_to_row
поменять.

*

rudoy24

  • Захожу иногда
  • 51
  • 1 / 0
effrit - попробовал ваш результат, безрезультатно, все так же выводит как и раньше.
Свою проблему решил стилизированием, а так же эту проблему можно решить сменой шаблона списка товаров на div.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Скрыть свободный атрибут если он не заполнен

Автор tima

Ответов: 15
Просмотров: 226
Последний ответ 10.09.2018, 01:51:42
от tima
Все изображения товара в списке

Автор klekovkinandrey

Ответов: 1
Просмотров: 132
Последний ответ 21.08.2018, 01:11:29
от Yura Vakulenko
Как вывести название и ссылку категории в списке товаров product.php ?

Автор SoCool

Ответов: 4
Просмотров: 778
Последний ответ 09.07.2018, 11:50:27
от dmitry_stas
Как вывести переменную buy_price в списке товаров?

Автор denxio

Ответов: 6
Просмотров: 300
Последний ответ 24.02.2018, 21:26:38
от denxio
Дополнительное поле у товара в списке категорий

Автор bantell

Ответов: 2
Просмотров: 325
Последний ответ 13.02.2018, 10:57:51
от bantell