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

AlexDark

  • Новичок
  • 7
  • 1 / 1
Всем привет. Вопрос может и глупый, но сам зашел в тупик. Есть список категорий которые нужно вывести постранично. Допустим по 10 на странице. Остальные стр. назад 1 2 3  вперед (как обычно)
Joomla вообще стандартными средствами это может сделать? Или посоветуйте пожалуйста расширение для неё.
*

White_Tiger

  • Захожу иногда
  • 88
  • 3 / 0
Посмотрите вкладку "макеты списка" там можно настроить и кол-во категорий на страницу по умолчанию, и разбиение по страницам, и возможность самостоятельного выбора юзверем кол-ва категорий на странице.
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
Что-то я не помню такого, чтобы можно было выводить пагинацию для категорий.
*

White_Tiger

  • Захожу иногда
  • 88
  • 3 / 0
Фу, чёрт. Пардоньте, не верно понял вопрос.
*

AlexDark

  • Новичок
  • 7
  • 1 / 1
Народ, неужели не у кого не стояла такая задача? Хоть направление может дадите, где копать, очень нужно.
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
Нет стандарта, да и расширений по моему нет. А копать будет тяжело из-за вложенной архитектуры категорий. Наверное поэтому и не сделали в стандарте пагинацию.
*

AlexDark

  • Новичок
  • 7
  • 1 / 1
Если мы рассматриваем разработчиков то их уровень знаний это позволяет сделать на раз два. Простым смертным проблематично, но можно.
И так получилось за бацать так называемую пагинацию. Правда на коленках, надо будет облагородить чтоб было красиво.
1. Переопределяем макет вывода категории я делал (список всех категорий).
2. Расковыриваем код в файле ваше-название_items.php (по умолчанию default_items.php)
Мой пример я удалил все что мне ненужно, если заморочиться вторым этапом можно сделать чтоб были стандартные настройки от Joomla такие как предварительный текст, картинки кому надо это уже легко.
Код
<?php

/**
 * @package Joomla.Site
 * @subpackage com_content
 * @copyright Copyright (C) 2005 - 2012 Open Source Matters, Inc. All rights reserved.
 * @license GNU General Public License version 2 or later; see LICENSE.txt
 */

// no direct access
defined('_JEXEC') or die;
$class = ' class="first"';

$step = 10;
$cat_num=count($this->items[$this->parent->id]);
$page_num = ceil($cat_num / $step);

$stCatNum = 0;
$endCatNum = $step;

if (isset($_GET['page']))
   {
    $page = substr_replace($_GET['page'], '', -2, 2);
    if ($page == '' or !ctype_digit($page) or $page > $page_num)
  {
   unset($page);
  }
    else {
      $stCatNum =  $page*$step-$step;
          $endCatNum = $page*$step-1;
}
   }
   
$x = 1;
$menu = ''; 
while ($x <= $page_num and $page_num != 1)
{
$menu.= '<a href="'.
  substr_replace($_SERVER['REQUEST_URI'], '',
  strpos($_SERVER['REQUEST_URI'], "?page", 0),
  strpos($_SERVER['REQUEST_URI'], "ru", 0))
 .'?page='.$x.'ru"> >'.$x.' </a>';
$x++;
}



if (count($this->items[$this->parent->id]) > 0 && $this->maxLevelcat != 0) :
?>


<ul>
<?php foreach($this->items[$this->parent->id] as $id => $item) :

if ($id >= $stCatNum and $id <= $endCatNum ) :
?>
   
<li>
<span class="item-title"><a href="<?php echo JRoute::_(ContentHelperRoute::getCategoryRoute($item->id));?>">
<?php
echo $this->escape($item->title);
?></a>
</span>
</li>
    <?php endif; ?>

<?php endforeach; ?>
</ul>
<?php endif; ?>
<?php echo '<br>'.$menu ; ?>

Пример того как работает можно посмотреть тут http://korolevbilliard.ru/home/tournaments/old-tournaments
категорий там пока мало, но под развитие.

Буду рад если кто какие комментарии оставит по недочетам или по оптимизации .
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Что-то я не помню такого, чтобы можно было выводить пагинацию для категорий.
В блоге категорий вроде-как можно?
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
*

AlexDark

  • Новичок
  • 7
  • 1 / 1
Проверил. Создал под категорию, косяки не появились. А вот после обновы Joomla только сейчас увидел что вывод материалов поплыл, исправил.
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
Проверил. Создал под категорию, косяки не появились. А вот после обновы Joomla только сейчас увидел что вывод материалов поплыл, исправил.
Я так понимаю, что у Вас на странице выводится список категорий какой-то конкретной категории - old-tournaments - это какой тип пункта меню? Как я понял из Вашего кода, вы берёте учёт только родительских категорий без учёта подкатегорий.

Что будет, если Вы выведите именно список всех категорий (с подкатегориями)?
*

AlexDark

  • Новичок
  • 7
  • 1 / 1
Да old-tournaments это пункт меню (список всех категорий) ведет на категорию с кучей под категорий, но с измененным макетом.
В моем шаблоне который я привел выше я выкинул все управление от Joomla, поэтому просто выводится родительский список категорий, id категории передается Joomla, поэтому если есть 2 и более  одноименной задачи по выводу разделов, переделывать ничего ненужно. Маленькое  но, так-как количество строк все же берется из шаблона в переменной $step то у всех разделов будет одинаковое количество строк. И тут можно заморочиться если допустим структура сайта сформирована у вас уже есть  id категорий то можно написать не большой php код который будет проверять сколько строк нужно выводить под каждой категорией.

Цитировать
Что будет, если Вы выведите именно список всех категорий (с подкатегориями)?

В данный момент на своем сайте я внес в шаблон возможность управления из Joomla, можно посмотреть, но потом уберу оно мне ненужно.
В итоге:
Если создать под категории дальше в глубину они будут выводится если в Joomla включен вывод(глубина просмотра все, 1, 2 и т.д.)
Выводится они будут под своей родительской категорией (которые я делал постраничный вывод), но влиять на количество строк не будут.
То есть если я поставил выводить по 5 ссылок родителей, а дальше разбить на страницы то выведутся 5 основных категорий и их потомки.
1 категория
 1.1 подкатегория
 1.2 подкатегория
2 категория
3 категория
4 категория
5 категория
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
Понятно, как я и думал - страницы считаются для исходя из кол-ва родителей. Ну в принципе, вариант.
*

AlexDark

  • Новичок
  • 7
  • 1 / 1
Увы способ с изъянами, не идеален. В идеале нужно копать глубже до момента запроса к базе тогда уже можно данными крутить как вам угодно.
*

AlexDark

  • Новичок
  • 7
  • 1 / 1
Кстати говоря о возможностях, на самом деле в Joomla реализована пагинация категорий  и с уровнем дочерних категорий и с листингом все супер но используется она в админке когда заходите материалы->менеджер категорий. Поэтому разработчиков не понимаю почему они эту идею не перенесли и в пользовательский режим.
*

Sergeyy

  • Захожу иногда
  • 154
  • 3 / 0
Вот мой костыль:
http://joomlaforum.ru/index.php/topic,297014.msg1480272.html#msg1480272
Работает без проблем. Список подкатегорий мне не нужен, даже непроверял

А вообще нам сюда http://ideas.joomla.org/forums/84261-joomla-idea-pool/suggestions/2315657-pagination-for-categories-and-subcategories
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывод даты материала в списке тегов

Автор androv77

Ответов: 2
Просмотров: 894
Последний ответ 09.11.2023, 16:33:08
от denxio
Вывод дополнительного поля материала в модуле

Автор timofe

Ответов: 10
Просмотров: 1509
Последний ответ 06.10.2023, 14:02:24
от Mitriy
Долго грузятся страницы категорий

Автор SuperRomario

Ответов: 4
Просмотров: 1503
Последний ответ 03.07.2023, 17:59:07
от Wood
[Решено] Получить список тегов каждого материала в блоге категории

Автор goga_pgasovav

Ответов: 1
Просмотров: 401
Последний ответ 02.03.2023, 14:20:21
от goga_pgasovav
Вывод даты публикации материала в списке меток tags

Автор androv77

Ответов: 1
Просмотров: 393
Последний ответ 07.01.2023, 13:23:15
от NewUsers