Помощь Как вывести список категорий с материалами?

eskadu

Постоялец
Регистрация
13 Сен 2016
Сообщения
41
Реакции
6
Помогите пожалуйста разбраться, сейчас выводятся только названия категорий, а нужно что бы под каждой категорией (если есть) выводился материал, должно выглядеть как карта сайта.

На первом скрине что выводится на сайте, вывожу с помощью Материал > Список материалов категории

На втором сама струтура категорий
 

Вложения

  • 1.png
    1.png
    21,2 KB · Просмотры: 10
  • 2.png
    2.png
    25 KB · Просмотры: 10
Выберите так: Материалы » Блог категории
когда вибираю Материалы » Блог категории тоже выводятся только категории, а нужно что бы под ктегориями выводились ссылки с заголовком материала которое есть в данной категории
 
Помогите пожалуйста разбраться, сейчас выводятся только названия категорий, а нужно что бы под каждой категорией (если есть) выводился материал, должно выглядеть как карта сайта.

На первом скрине что выводится на сайте, вывожу с помощью Материал > Список материалов категории

На втором сама струтура категорий
Выберите так: Материалы » Блог категории
<-------------- добавлено через 1427 сек. -------------->
когда вибираю Материалы » Блог категории тоже выводятся только категории, а нужно что бы под ктегориями выводились ссылки с заголовком материала которое есть в данной категории
Тогда вижу 2 пути:
1) Отредактировать шаблон вывода, например как здесь: Для просмотра ссылки Войди или Зарегистрируйся
2) Посмотреть в сторону компонента Для просмотра ссылки Войди или Зарегистрируйся
 
Выберите так: Материалы » Блог категории
<-------------- добавлено через 1427 сек. -------------->

Тогда вижу 2 пути:
1) Отредактировать шаблон вывода, например как здесь: Для просмотра ссылки Войди или Зарегистрируйся
2) Посмотреть в сторону компонента Для просмотра ссылки Войди или Зарегистрируйся

по первому пункту крутое решение, то что нужно вот только не получается вывести ссылку, те примеры ссылок которые в примере неправельные, может потому что пример сделан на joomlа 2.5

на скрине 4 сам код, на скрине 5 ссылка которую создает, но она не рабочая получается что при переходе ошибка.
полная ссылка на материал: Для просмотра ссылки Войди или Зарегистрируйся
 

Вложения

  • 3.png
    3.png
    8,2 KB · Просмотры: 5
  • 4.png
    4.png
    20,1 KB · Просмотры: 5
  • 5.png
    5.png
    25,4 KB · Просмотры: 6
по первому пункту крутое решение, то что нужно вот только не получается вывести ссылку, те примеры ссылок которые в примере неправельные, может потому что пример сделан на joomlа 2.5

на скрине 4 сам код, на скрине 5 ссылка которую создает, но она не рабочая получается что при переходе ошибка.
полная ссылка на материал: Для просмотра ссылки Войди или Зарегистрируйся
Попробуйте заменить на это:
Код:
ContentHelperRoute::getArticleRoute($concert->id, $child->id, $concert->language);
Тут почитайте - Для просмотра ссылки Войди или Зарегистрируйся
 
Помогите пожалуйста разбраться, сейчас выводятся только названия категорий, а нужно что бы под каждой категорией (если есть) выводился материал, должно выглядеть как карта сайта.

На первом скрине что выводится на сайте, вывожу с помощью Материал > Список материалов категории

На втором сама струтура категорий
А почему не хотите поставить компонент K2?(если не секрет) Это действительно бы сильно упростило жизнь. Если не ошибаюсь там есть стандартный модуль делающий тоже самое
<-------------- добавлено через 1470 сек. -------------->
не хочу усложнять лишними компонентами, понимаю что это сделать на стандартных стредствах не так уж и сложно
<-------------- добавлено через 146 сек. -------------->

результат тот же, построение ссылки идет не правльно как на предедущих скринах

Напишите Вашу версию Joomla, ссылку которую дали по идее должна бы работать
<-------------- добавлено через 1283 сек. -------------->
Joomla 3.8 мало с ней еще опыта общения было, можно попробовать прямую ссылку, вместо:
Код:
<a href="'.JRoute::_(ContentHelperRoute::getArticleRoute($concert->id, $child->id, $concert->language)).'">'.$concert->title.'</a>
Попробовать:
Код:
<a href="index.php?option=com_content&view=article&id=<?php echo $concert->id; ?>"><?php echo $concert->title; ?></a>
И если есть какие то компоненты SEF отключите их, хотя бы на время теста.
<-------------- добавлено через 634 сек. -------------->
Так же попробуйте так сделать (хоть я тут и не уверен)
Код:
<ul>
                <?php
                    $db =& JFactory::getDBO();
                    $query = $db->getQuery(true);
                    //echo $item->id;
                    $query = 'SELECT * FROM `#__content` WHERE `catid`='.$item->id.' AND `state`>0';
                    $db->setQuery($query);
                    $res= $db->loadObjectList();
                    foreach ($res as $concert) {
                        echo '<li>';
                        //print_r ($concert);
                        //echo $concert->title;
                       echo  ''.$concert->title.'';
                        echo '</li>';
                    }
                ?>
            </ul>
 
А почему не хотите поставить компонент K2?(если не секрет) Это действительно бы сильно упростило жизнь. Если не ошибаюсь там есть стандартный модуль делающий тоже самое
не хочу усложнять лишними компонентами, понимаю что это сделать на стандартных стредствах не так уж и сложно
<-------------- добавлено через 146 сек. -------------->
Попробуйте заменить на это:
Код:
ContentHelperRoute::getArticleRoute($concert->id, $child->id, $concert->language);
Тут почитайте - Для просмотра ссылки Войди или Зарегистрируйся
результат тот же, построение ссылки идет не правльно как на предедущих скринах
<-------------- добавлено через 2998 сек. -------------->
А почему не хотите поставить компонент K2?(если не секрет) Это действительно бы сильно упростило жизнь. Если не ошибаюсь там есть стандартный модуль делающий тоже самое
<-------------- добавлено через 1470 сек. -------------->


Напишите Вашу версию Joomla, ссылку которую дали по идее должна бы работать
<-------------- добавлено через 1283 сек. -------------->
Joomla 3.8 мало с ней еще опыта общения было, можно попробовать прямую ссылку, вместо:
Код:
<a href="'.JRoute::_(ContentHelperRoute::getArticleRoute($concert->id, $child->id, $concert->language)).'">'.$concert->title.'</a>
Попробовать:
Код:
<a href="index.php?option=com_content&view=article&id=<?php echo $concert->id; ?>"><?php echo $concert->title; ?></a>
И если есть какие то компоненты SEF отключите их, хотя бы на время теста.

все то же самое, джумла чистая стоит ничего не устанавливал
<-------------- добавлено через 2466 сек. -------------->
РЕШИЛ..........

вывожу с помощью Материал > Список материалов категории

и в шаблоне вывода templates/ваша_тема/html/com_content/category/default_children.php (если есть подкатегории как у меня) то так же прописываем в нужном месте в шаблоне templates/ваша_тема/html/com_content/category/blog_children.php следующий код

PHP:
                    <?php
                        $db = JFactory::getDbo();
                        $query = $db->getQuery(true)
                            ->select('id, title, language')
                            ->from('#__content')
                            ->where('catid = ' . (int) $child->id)
                            ->where('state > 0');
                        $db->setQuery($query);
                        $res= $db->loadObjectList();
                    ?>
                    <ul>
                    <?php
                     foreach ($res as $wkch): ?>
                       <li>
                       <?php //print_r($wkch);?>
                             <?php echo '<a href="'.JRoute::_(ContentHelperRoute::getArticleRoute($wkch->id, $child->id, $wkch->language)).'">'.$wkch->title.'</a>';?>
                      </li>
                    <?php endforeach;?>
                    </ul>
 
  • Нравится
Реакции: diex
Назад
Сверху