Добрый день!
Есть инфоблок, в корне которого сразу находятся элементы , вот просто элементы, нет необходимости как то их разделять...
Вопрос, как вывести сразу элемент каталога детально ?
Пробую через bitrix:news.detail так как элементы это не товары а просто элементы с описанием.
Настройка инфоблока:
URL страницы детального просмотра: #SITE_DIR#/news/#ELEMENT_CODE#/
В корне сайта /news/index.php
Настройка bitrix:news.detail
ID новости: ={$_REQUEST["ELEMENT_CODE"]}
Ничего не выводит, подскажите пожалуйста что не так?
Ярослав Александров, Ставлю ELEMENT_ID ,все равно не открывает карточку, делал и с коплексным bitrix:news в /news/index.php ,соответственно в настройках инфоблока тоже #SITE_DIR#/news/#ELEMENT_ID#
Возможно это связано с правилами обработки адресов? я не настраивал их и там нет правил касающихся этого каталога...
SteepNET, откуда в ELEMENT_ID появится ID?
Вы на странице /news/index.php какой компонент используете? Если bitrix:news то всё будет работать, в его состав входит bitrix:news.detail
Если же вы в bitrix:news.detail хотите конкретную новость вывести тогда укажите там конкретный ID элемента.
Ярослав Александров,
Попробовал комплексный bitrix:news ,все работает! Он автоматом добавляет правило обработки.
Но мне кажется что комплексный компонент тут не нужен, ради двух страниц, запуливать комплексный не стоит.
Делаю так:
1.В каталоге /news/index.php добавляю bitrix:news.list в нем
"DETAIL_URL" => "",
Список выводит!
2.В каталоге /news/detail.php добавляю bitrix:news.detail в нем
"ELEMENT_CODE" => "",
"ELEMENT_ID" => $_REQUEST["ELEMENT_CODE"],
Не переходит в детальную страницу.. Элемент не найден!
Но мне кажется что комплексный компонент тут не нужен, ради двух страниц, запуливать комплексный не стоит.
это не товары а просто элементы с описанием.
- в этом случае вам и компоненты не нужны, делает две папки, и вот вам две статические страницы "с описанием"
Я если честно не пойму какую цель вы хотите достигнуть этой ерундой
Ярослав Александров, Почему ерундой? Для чего тогда отдельно существуют эти компоненты ?
Я пытаюсь вывести элементы каталога через bitrix:news.list и bitrix:news.detail что тут ерундового?
Возможно это может выглядеть неразумно, зачем использовать простые компоненты когда можно комплексный?
Ну опять же понять почему не работает моя схема с простыми компонентами , для саморазвития, многие я видел используют простые компоненты вместо комплексных...
- потому что для любого каталога, неважно сколько в нём элементов лучше использовать либо товарный (если товары), либо новостной комплексный компонент, в котором уже есть функционал ЧПУ
- в вашем случае URL страницы детального просмотра будет такого плана
/news/detail.php?ID=14 и как там не занимайся ерундой в urlrewrite.php, лучше ЧПУ не станет
2.В каталоге /news/detail.php добавляю bitrix:news.detail в нем
"ELEMENT_CODE" => "",
"ELEMENT_ID" => $_REQUEST["ELEMENT_CODE"],
Не переходит в детальную страницу.. Элемент не найден!
SteepNET, у вас настройки ЧПУ для комплексного компонента. Вас я смотрю не смущает, что вы сами пишите 'PATH' => '/news/detail.php',
Когда у компонента нет ЧПУ, основными настройками для адресов являются настройки инфоблока.
А должны быть настройки изначально такие:
URL страницы раздела: #SITE_DIR#/news/list.php?SECTION_ID=#SECTION_ID#
URL страницы детального просмотра: #SITE_DIR#/news/detail.php?ID=#ELEMENT_ID#
Соответственно всё что после знака "?" вы можете экспериментировать меняя параметры.
Найдите в онлайн курсах битрикса про ЧПУ и настройки инфоблоков и внимательно изучите.
Как вариант, разместите в /news/index.php компонент bitrix:news.list или bitrix:catalog.section после настройки по адресу #SITE_DIR#/news/#ELEMENT_CODE#/ будут ваши элементы, а по адресу /news/ их список
Делаю так:
1.В каталоге /news/index.php добавляю bitrix:news.list в нем
"DETAIL_URL" => "",
Список выводит!
2.В каталоге /news/detail.php добавляю bitrix:news.detail в нем
"ELEMENT_CODE" => "",
"ELEMENT_ID" => $_REQUEST["ELEMENT_CODE"],
Не переходит в детальную страницу.. Элемент не найден!
2.В каталоге /news/detail.php добавляю bitrix:news.detail в нем
"ELEMENT_CODE" => "",
"ELEMENT_ID" => $_REQUEST["ELEMENT_CODE"],
Не переходит в детальную страницу.. Элемент не найден!
Вам не нужен detail.php
Просто в индексе разместите компонент news.list и настройте
"DETAIL_URL" => "/news/#ELEMENT_CODE#/",
Если сделаете настройку из публичной части и сохранитесь, запись в urlrewrite добавится сама.
ELEMENT_CODE прописан нормально, в случае с комплексным работает все хорошо..
Конечно. Вы же в urlrewrite именно его и вызываете 'ID' => 'bitrix:news',