Открыть Ответить

Хак вывода подкатегорий

0

0

1
16.08.2021 11:17:37

Ни скрине ниже корневая директория. В ней мы видим, что у категории "Книги" есть подкатегории (три штуки).
forum-YK0e6GFa6z-22831.jpg

Теперь, если перейдём в категорию «Книги» (т.е. не корневую), то в стандартной поставке отобразятся только эти три категории.

Скрин 2
forum-gBlUA0M615-22831.jpg

Хак же позволяет увидеть и вложенные категории (в случае их наличия) (Скрин 3).

Скрин 3 ( модифицированный вариант)
forum-T3wbwC85aV-22831.jpg

Модификация проста.
Файл function/function.php
Функция categories ()
с самом начале модифицировать две строки убрав из них AND parentid = id.
В результате получится:

PHP
if ($id) {
    $where = "WHERE modul = '".$mod."' ";
} elseif ($id && $conf['multilingual']) {
    $where = "WHERE modul = '".$mod."' AND (language = '".$currentlang."' OR language = '')";
} elseif ($conf['multilingual']) {
    $where = "WHERE modul = '".$mod."' AND (language = '".$currentlang."' OR language = '')";
}else{
    $where = "WHERE modul = '".$mod."'";
}

Далее подкорректировать while, добавив условие if:

PHP
while (list($cid, $title, $description, $img, $parentid, $auth_view, $auth_read) = $db->sql_fetchrow($result)) {
    if($id && $id==$parentid){
        $massiv2[] = array($cid, $title, $description, $img, $parentid, $auth_view, $auth_read);            
        }
	$massiv[] = array($cid, $title, $description, $img, $parentid, $auth_view, $auth_read);
	unset($cid, $title, $description, $img, $parentid, $auth_view, $auth_read);            
}

Сразу за этим добавить строку:

PHP
 if(empty($massiv2)) $massiv2=$massiv;

И последний штрих:
Поcле cont=""
изменить переменную $massiv на $massiv2 :

PHP
foreach ($massiv2 as $val) {

На этом всё.

olevpa
olevpa
3.97

3.97

2
21.08.2021 11:07:16

Полезная модификация, спасибо!


О сколько нам открытий чудных, Готовит просвещенья дух, И опыт, сын ошибок трудных, И гений, парадоксов друг...

SLAED CMS
SLAED CMS
3.24

3.24

Открыть Ответить
Хотите опробовать SLAED CMS в действии?
Идеи и предложения
Обратная связь
Подтверждение

Поделиться
QR-код

Предварительный просмотр