empty

Отображеине подкатегорий в актегории

Рекомендуемые сообщения

empty    14

Здравствуйте, нужно настроить отображение подкатегорий в категории по три субкатегории в строке. Но у меня архитектура выглядит так:

  <div class="category-list">
    <?php if (count($categories) <= 3) { ?>
    <ul>
      <?php foreach ($categories as $category) { ?>
      <li><a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a></li>
      <?php } ?>
    </ul>
    <?php } else { ?>
    <?php for ($i = 0; $i < count($categories);) { ?>
    <ul>
      <?php $j = $i + ceil(count($categories) / 3); ?>
      <?php for (; $i < $j; $i++) { ?>
      <?php if (isset($categories[$i])) { ?>
      <li>
      <div class="image"><img src="<?php print_r($categories[$i]['image']) ?>" alt="" /></div>
      <a href="<?php echo $categories[$i]['href']; ?>"><?php echo $categories[$i]['name']; ?></a>
      </li>
      <?php } ?>
      <?php } ?>
    </ul>
    <?php } ?>
    <?php } ?>
  </div>

Т.е. <ul> в котором по два <li>, а мне нужно три. В .tpl файле вместо 4 поставил 3, а в .php файле непонял где можно поправить.

Подскажите пожалуймта как можно сделать по три субкатегории в строке? Поиск ничего не дал.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
trance    75

Не царское это дело, поиск?

 

Принцип тот же как для модуля меню так и для подкатегорий в категории

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
empty    14

Не царское это дело, поиск?

 

Принцип тот же как для модуля меню так и для подкатегорий в категории

И что ты мне посоветовал? На кой мне меню? Вот, посмотри код вывода подкатегорий, если не понял что я имею ввиду.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
empty    14

Есть у кого адекватные решения?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Pascha    647

Есть у кого адекватные решения?

что бы его получить, для начала сообразуйте все

1. в файле стилей имеются дубли: со строки 981 и со строки 1864

2. ширина контейнера для картинок у вас стилями определен 150px , а параметры картинок  выставлены в 250 px (дальше не смотрел)

короче, по мне так каша там...увы...

 

а когда в кучу все соберете, может и вот это поможет или подтолкнет: 

 

.category-list ul {
    float: left;
    width: 150px;
    list-style: none;
    padding: 0px;
    margin-right: 80px;
}



Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
empty    14

Есть у кого адекватные решения?

что бы его получить, для начала сообразуйте все

1. в файле стилей имеются дубли: со строки 981 и со строки 1864

2. ширина контейнера для картинок у вас стилями определен 150px , а параметры картинок  выставлены в 250 px

короче, по мне так каша там...увы...

Вы не поняли, у меня структура такая:

<div class="category-list">
<ul>
<li></li>
<li></li>
</ul>
<ul>
<li></li>
<li></li>
</ul>
<ul>
<li></li>
<li></li>
</ul>
</div>

А мен надо что бы этих <li> было три а не два.

Вот так:

<div class="category-list">
<ul>
<li></li>
<li></li>
<li></li>
</ul>
<ul>
<li></li>
<li></li>
<li></li>
</ul>
<ul>
<li></li>
<li></li>
<li></li>
</ul>
</div>

Я не могу додуматься как и что поправить в .tpl файле шаблона.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
empty    14

Нет, к сожалению это не то, мне нужно не модуль категорий настроить, а саму страницу. Перейди по ссылке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
empty    14

Нашёл решение сам, вот тут:

  <?php if ($categories) { ?>
  <h2 class="subkat"><?php echo $text_refine; ?></h2>
  <div class="category-list">
    <?php if (count($categories) <= 1) { ?>
    <ul>
      <?php foreach ($categories as $category) { ?>
      <li><a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a></li>
      <?php } ?>
    </ul>
    <?php } else { ?>
    <?php for ($i = 0; $i < count($categories);) { ?>
    <ul>
      <?php $j = $i + ceil(count($categories) / 1); ?>
      <?php for (; $i < $j; $i++) { ?>
      <?php if (isset($categories[$i])) { ?>
      <li>
      <div class="image"><img src="<?php print_r($categories[$i]['image']) ?>" alt="" /></div>
      <a href="<?php echo $categories[$i]['href']; ?>"><?php echo $categories[$i]['name']; ?></a>
      </li>
      <?php } ?>
      <?php } ?>
    </ul>
    <?php } ?>
    <?php } ?>
  </div>
  <?php } ?>

Вместо цифр 2, 3 или 4 нужно поставить 1. Тогда условие, которое отвечает за определённое отображение элеаентов, вследствме того что категорий меньше, например, трёх или есть три - бужет выводится одним способом, если же больше - то другим (<?php } else { ?>). Решил эту проблему самым странным методом - выставил цифру 1. Всё встало так как  надо + css

.category-list ul li {
text-align: center;
vertical-align: top;
height: 100%;
}
.category-list ul li {
display: inline-block;
}

Который придаст красоту отображения элементов при разном их колличестве.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу