Регистрация
Вход через соцсети
Восстановление пароля

Разместить содержание нижележащего раздела

Новый топик
08.05.2008, 17:33
Ответить | Цитировать
Гость
Гость

Пожскажите, кто знает.

Нужно чтобы в разделе выводилось содержимое нижележащего раздела. Как реализовать практически?
(наверное нужно настроить компонент чтобы в префиксе выводилось содержимое нижележащего раздела).

Спасибо
08.05.2008, 17:48
Ответить | Цитировать
ktotoff
АльтерЛан

Зарегистрирован:
2006-12-19
Сообщений: 330

Если у вас нет контента для раздела, а предполагается сразу переход на один из подуровней, то правильней и проще это организовать с помощью переадресаций.

...жизнь прекрасна, когда правильно подобраны антидепрессанты...
11.05.2008, 10:53
Ответить | Цитировать
Гость
Гость

Дело в другом. Есть одноуровневый каталог (разделы сайта) на страницах которого представлен обычный список продукции (используется определенный компонент). Но в каждом разделе перед списком нужно выводить описание.
Идея в том что описание размещать в соответствующих дочерних разделах и выводить его перед списком продукции.
Может есть другие способы, но пока другого решения не вижу.
11.05.2008, 21:46
Ответить | Цитировать
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

Вот вам один из вариантов решения:
Код:

/*****************************************************************
* Получение ID всех вложенных подразделов рубрикатора
*/
function SubdivisionChildsGet($subdivision_id) {
global $db;
$ids = "";
$childs = "";
$query = "select Subdivision_ID from Subdivision where Parent_Sub_ID='{$subdivision_id}'";
$res = $db->get_col($query);
foreach ((array)$res as $id) {
// получаем вложенные подразделы по рекурсии
$childs = SubdivisionChildsGet((int)$id);
$ids .= ($ids?",":"").$id.($childs?",":"").$childs;
}
return $ids;
}


На входе подаете ИД корневого раздела, а на выходе получаете строку со списком ИД вложенных подразделов. Далее в системных настройках компонента (шаблона) корректируете sql запрос добавляя в условие where условие "Subdivision_ID in (".SubdivisionChildsGet(ИД текущего раздела).")"

Temet nosce...
12.05.2008, 09:10
Ответить | Цитировать
Гость
Гость

Как вариант

Цитата:


".(!$totRows?"
<ul>
".@listQuery("
SELECT Catalogue_ID, Subdivision_ID, Subdivision_Name, Hidden_URL, Catalogue_ID, ExternalURL
FROM Subdivision
WHERE Checked = '1'
AND Parent_Sub_ID = '$sub'
ORDER BY `Priority` ASC
","
".($admin_mode?"
<li><a href='/netcat/?catalogue=$data[Catalogue_ID]&sub=$data[Subdivision_ID]'>$data[Subdivision_Name]</a></li>
":"
<li><a href='$data[Hidden_URL]'>$data[Subdivision_Name]</a></li>
")."
")."
</ul>
":NULL)."

12.05.2008, 10:24
Ответить | Цитировать
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

Гость писал(а):
Как вариант....

Ваш вариант - это частный случай для 2х уровневых разделов. Если у разделов более 2х уровней, то в корневом разделе вы не увидите содержание 3-го и более разделов.

Temet nosce...
06.06.2013, 21:42
Ответить | Цитировать
Гость
Гость

Цитата:
Вот вам один из вариантов решения:
Код:

/*****************************************************************
* Получение ID всех вложенных подразделов рубрикатора
*/
function SubdivisionChildsGet($subdivision_id) {
global $db;
$ids = "";
$childs = "";
$query = "select Subdivision_ID from Subdivision where Parent_Sub_ID='{$subdivision_id}'";
$res = $db->get_col($query);
foreach ((array)$res as $id) {
// получаем вложенные подразделы по рекурсии
$childs = SubdivisionChildsGet((int)$id);
$ids .= ($ids?",":"").$id.($childs?",":"").$childs;
}
return $ids;
}


На входе подаете ИД корневого раздела, а на выходе получаете строку со списком ИД вложенных подразделов. Далее в системных настройках компонента (шаблона) корректируете sql запрос добавляя в условие where условие "Subdivision_ID in (".SubdivisionChildsGet(ИД текущего раздела).")"


я вставил этот код в "Системные настройки:" компонента. видимо нужно еще что-то прописать чтобы увидеть результат. Заранее благодарю за ответ.
07.06.2013, 21:06
Ответить | Цитировать
Руслан Густокашин
Студия Вэлпис
Руслан Густокашин

Зарегистрирован:
2012-02-06
Сообщений: 869

Еще один вариант отображения вложенных объектов я приводил в соседнем топике:
вывод объектов из дочерних ...

Но я так понял, что вам нужно немного другое - выводить для раздела какое-то описание, у каждого раздела - свое.
Так не проще ли в визуальных настройках компонента ввести какое-то текстовое поле, куда вы будете вбивать текст в админке? Либо создать дополнительное поле в системной таблице "Разделы" и также заполнять его нужным текстом.

198 196 2013-06-07 21:06:16 9310
Описание проекта