LiveInternetMail.ru
Форум русской поддержки Joomla!® CMS
28.05.2012, 00:53:04 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 1.7 FAQ Joomla 1.5 FAQ Joomla 1.0 FAQ Правила форума Новости Joomla Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор Тема: Вывод списка категорий раздела в 2 колонки  (Прочитано 3420 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
doker
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 8


Питерские мы


« : 25.04.2009, 23:40:48 »

Привет всем! Принимайте новенького  Azn

для версии 1.5.9
Вопрос: как вывести  список категорий раздела в 2 или 3 колонки,
(аналогично списку материалов раздела в формате блога)
Записан
SmokerMan
Профи
********

Репутация: +521/-20
Offline Offline

Пол: Мужской
Сообщений: 5195



« Ответ #1 : 26.04.2009, 12:10:50 »

редактировать файл components\com_content\views\category\tmpl\default_items.php
Поиск по форуму = меняем вид вывода  Cool
Записан
mould
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


« Ответ #2 : 13.08.2009, 10:57:22 »

Не хочется новую тему плодить, проблема та же!
Поиск по форуму не помог...
Подскажите пожалуйста, что конкретно надо менять в файле default_items.php, что бы вывести список категорий в несколько колонок! Или ссылку киньте, где этот вопрос освещался....
Записан
mould
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


« Ответ #3 : 14.08.2009, 10:56:49 »

Неужели никто не поможет?
Записан
vovkaDN
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 36


« Ответ #4 : 14.08.2009, 16:52:42 »

решил след. способом.
привожу полное содержимое файла components\com_content\views\section\tmpl\default.php
замените свое содержимое на это. разбивает на две колонки.

Код:
<?php // no direct access
defined ('_JEXEC') or die ('Restricted access');
$cparams =& JComponentHelper::getParams ('com_media');
?>
<?php if ($this->params->get ('show_page_title', 1)) : ?>
<div class="componentheading<?php echo $this->escape ($this->params->get ('pageclass_sfx')); ?>">
<?php echo $this->escape ($this->params->get ('page_title')); ?>
</div>
<?php endif; ?>
<table width="100%" cellpadding="0" cellspacing="0" border="0" align="center" class="contentpane<?php echo $this->escape ($this->params->get ('pageclass_sfx')); ?>">
<tr>
<td width="60%" valign="top" class="contentdescription<?php echo $this->escape ($this->params->get ('pageclass_sfx')); ?>" colspan="2">
<?php if ($this->params->get ('show_description_image') && $this->section->image) : ?>
<img src="<?php echo $this->baseurl . '/' . $cparams->get ('image_path'). '/'.  $this->section->image;?>" align="<?php echo $this->section->image_position;?>" hspace="6" alt="<?php echo $this->section->image;?>" />
<?php endif; ?>
<?php if ($this->params->get ('show_description') && $this->section->description) : ?>
<?php echo $this->section->description; ?>
<?php endif; ?>
</td>
</tr>
<tr>
<td valign=top>
<?php if ($this->params->get ('show_categories', 1)) : ?>
<ul>
<?php
$cat_count= (int)(count ($this->categories)/2);
  $tt=0;
  foreach ($this->categories as $category) :
if (!$this->params->get ('show_empty_categories') && !$category->numitems) continue; ?>
<li>
<a href="<?php echo $category->link; ?>" class="category">
<?php echo $this->escape ($category->title);?></a>
<?php if ($this->params->get ('show_cat_num_articles')) : ?>
&nbsp;
<span class="small">
( <?php if ($category->numitems==1) {
echo $category->numitems ." ". JText::_( 'item' );}
else {
echo $category->numitems ." ". JText::_( 'items' );} ?> )
</span>
<?php endif; ?>
<?php if ($this->params->def ('show_category_description', 1) && $category->description) : ?>
<br />
<?php echo $category->description; ?>
<?php
      $tt++;
  if ($tt > $cat_count)
  {
   if ($tt == $cat_count+1) print "</li></ul></td><td valign=top><ul><li>";
  }
      endif; ?>
</li>
<?php endforeach; ?>
</ul>
<?php endif; ?>
</td>
</tr>
</table>
Записан
r3akt0r
Гость
« Ответ #5 : 27.07.2010, 10:47:08 »

Warning: Invalid argument supplied for foreach() in /usr/home/site/data/www/site/components/com_content/views/category/tmpl/default_items.php on line 28     Grin
Joomla 1.5
« Последнее редактирование: 27.07.2010, 13:29:29 от r3akt0r » Записан
loadboard
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 5



« Ответ #6 : 12.01.2011, 14:20:54 »

решил след. способом.
привожу полное содержимое файла components\com_content\views\section\tmpl\default.php
замените свое содержимое на это. разбивает на две колонки.

Код:

<?php // no direct access
defined ('_JEXEC') or die ('Restricted access');
$cparams =& JComponentHelper::getParams ('com_media');
?>
<?php if ($this->params->get ('show_page_title', 1)) : ?>
<div class="componentheading<?php echo $this->escape ($this->params->get ('pageclass_sfx')); ?>">
<?php echo $this->escape ($this->params->get ('page_title')); ?>
</div>
<?php endif; ?>
<table width="100%" cellpadding="0" cellspacing="0" border="0" align="center" class="contentpane<?php echo $this->escape ($this->params->get ('pageclass_sfx')); ?>">
<tr>
<td width="60%" valign="top" class="contentdescription<?php echo $this->escape ($this->params->get ('pageclass_sfx')); ?>" colspan="2">
<?php if ($this->params->get ('show_description_image') && $this->section->image) : ?>
<img src="<?php echo $this->baseurl . '/' . $cparams->get ('image_path'). '/'.  $this->section->image;?>" align="<?php echo $this->section->image_position;?>" hspace="6" alt="<?php echo $this->section->image;?>" />
<?php endif; ?>
<?php if ($this->params->get ('show_description') && $this->section->description) : ?>
<?php echo $this->section->description; ?>
<?php endif; ?>
</td>
</tr>
<tr>
<td valign=top>
<?php if ($this->params->get ('show_categories', 1)) : ?>
<ul>
<?php
$cat_count= (int)(count ($this->categories)/2);
  $tt=0;
  foreach ($this->categories as $category) :
if (!$this->params->get ('show_empty_categories') && !$category->numitems) continue; ?>
<li>
<a href="<?php echo $category->link; ?>" class="category">
<?php echo $this->escape ($category->title);?></a>
<?php if ($this->params->get ('show_cat_num_articles')) : ?>
&nbsp;
<span class="small">
( <?php if ($category->numitems==1) {
echo $category->numitems ." ". JText::_( 'item' );}
else {
echo $category->numitems ." ". JText::_( 'items' );} ?> )
</span>
<?php endif; ?>
<?php if ($this->params->def ('show_category_description', 1) && $category->description) : ?>
<br />
<?php echo $category->description; ?>
<?php
      $tt++;
  if ($tt > $cat_count)
  {
   if ($tt == $cat_count+1) print "</li></ul></td><td valign=top><ul><li>";
  }
      endif; ?>
</li>
<?php endforeach; ?>
</ul>
<?php endif; ?>
</td>
</tr>
</table>

РАБОТАЕТ! здесь проверил - http://www.loadboard.ru
Записан
loadboard
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 5



« Ответ #7 : 12.01.2011, 14:34:12 »

только поменял строчку

if ($tt == $cat_count+1) print "</li></ul></td><td valign=top><ul><li>";

на

if ($tt == $cat_count+1) print "</li></ul></td><td valign=top>";

 laugh

http://www.loadboard.ru

Записан
raptor123
Захожу иногда
**

Репутация: +2/-0
Offline Offline

Пол: Мужской
Сообщений: 10


« Ответ #8 : 30.01.2012, 14:12:37 »

 !А как реализовать тоже самое (список всех материалов две колонки) в Joomle 2.5?
Записан
orlo
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 4


« Ответ #9 : 25.04.2012, 17:35:10 »

Здравствуйте! Требуется помощь.

В K2 есть модуль вывода авторов, он выводит колонку имен авторов + аватар.

Вот код

 <?php foreach ($authors as $author): ?>
 
        <a class="abAuthorName" rel="author" href="<?php echo $author->link; ?>">
         <?php echo $author->name; ?>

         <?php if ($params->get('authorItemsCounter')): ?>
         <span>(<?php echo $author->items; ?>)</span>
         <?php endif; ?>
      </a>
    
      <?php if ($params->get('authorAvatar')): ?>
      <a class="k2Avatar abAuthorAvatar" rel="author" href="<?php echo $author->link; ?>" title="<?php echo K2HelperUtilities::cleanHtml($author->name); ?>">
         <img src="<?php echo $author->avatar; ?>" alt="<?php echo K2HelperUtilities::cleanHtml($author->name); ?>" style="width:<?php echo $avatarWidth; ?>px;height:auto;" />
      </a>
      <?php endif; ?>

   
          <?php endforeach; ?>

Подскажите пожалуйста, как вывести это в 3 колонки.
Записан
danem
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


« Ответ #10 : 28.04.2012, 08:13:55 »

!А как реализовать тоже самое (список всех материалов две колонки) в Joomle 2.5?

Вывод категорий (подкатегорий) в несколько колонок в Joomla 2.5 можно реализовать следующим образом:
1. Открываем файл /components/com_content/views/category/tmpl/blog_children.php - этот файл отвечает за вывод подкатегорий.
2. Находим код
Код:
<?php if (count($this->children[$this->category->id]) > 0 && $this->maxLevel != 0) : ?>
<ul>
<?php foreach($this->children[$this->category->id] as $id => $child) : ?>
<?php
if ($this->params->get('show_empty_categories') || $child->numitems || count($child->getChildren())) :
if (!isset($this->children[$this->category->id][$id + 1])) :
$class = ' class="last"';
endif;
?>
<li<?php echo $class;?>>
3. Добавляем тегу <ul> класс - например <ul class="triple">
4. Стераем или комментируем подстановку класса у <li>. Например  -  <li<?php /*echo $class; */?>>
У нас получается примерно следущее:
Код:
<?php if (count($this->children[$this->category->id]) > 0 && $this->maxLevel != 0) : ?>
<ul class="triple">
<?php foreach($this->children[$this->category->id] as $id => $child) : ?>
<?php
if ($this->params->get('show_empty_categories') || $child->numitems || count($child->getChildren())) :
if (!isset($this->children[$this->category->id][$id + 1])) :
$class = ' class="last"';
endif;
?>
<li<?php /*echo $class; */?>>
5. В файле CSS шаблона добавляем класс для <ul> (вывод в три колонки):
Код:
.triple ul {width:100%;overflow:hidden;}
.triple li {float:left;display:inline;width:33.333%;}
*width:33.333% отвечает за количество колонок. Соответственно если хочется 2ве колонки то вместо 33,333% , ставим 50%.

*Если нужно несколько вариантов вывода, значит создаём  альтернативный макет вывода (в 2ве, 4ре и т.д. колонки) в своём шаблоне и применяем его там где нужно.
« Последнее редактирование: 28.04.2012, 08:20:53 от danem » Записан
yad
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


« Ответ #11 : 12.05.2012, 22:25:09 »

danem, у меня не работает. исправил blog_children.php и в joomle и в шаблоне, добавил класс в CSS, почистил кеш, и отображение осталось по прежнему. Подскажите куда копать?
Записан
yad
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


« Ответ #12 : 13.05.2012, 14:36:03 »

поменял в файле \components\com_content\views\categories\tmpl\default_items и заработало, осталось только настроить высоту блоков.
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Рейтинг@Mail.ru Rambler Top100 Powered by SMF 1.1.16 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet