Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Подскажите лёгкий способ записи статей

00 голосов
5
Подскажите, как лучше и правильнее всего разместить несколько сотен статей в десятке категорий?

Пока что нашёл для себя 2 способа
1) В разных каталогах сайта хранить картинки для каждой статьи и файл с модулем вывода полной новости.
Плох он тем, что приходится привязываться к каждому файлу и терять универсальность управления

2) Создать раздел "статьи" и в нём 10 подразделов. В каждом подразделе - свои статьи.
Но возникает вопрос, как сделать навигацию по разделам? Чтобы, например, в разделе "компьютерная техника" выводились только статьи подраздела "компьютерная техника"?

Может быть, есть ещё проще вариант?
спросил 21 Май, 13 от zapekana (180 баллов)

5 Ответы

00 голосов
Предлагаю как один из способов.
1. Создаёте инфоблок Статьи (articles)
2. Создаёте в нём нужные подкатегории (например: Компьютерная техника и т.д.)
3. Создаёте папку на сайте и добовляете туда три файла, один индексный файл, другой показывает список статей из подраздела, а третий показывает саму статью детально.
4. Создаёте тип меню sect (section) и добаляете в этой папке это меню .sect.menu.php
5. Добаляете в этой папке файл .sect.menu_ext.php со следующим содержимым:
Код
<?
if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();

global $APPLICATION;

$aMenuLinksAdd = $APPLICATION->IncludeComponent(
   "bitrix:menu.sections",
   "",
   Array(
      "ID" => $_REQUEST["articles"], 
      "IBLOCK_TYPE" => "articles", 
      "IBLOCK_ID" => "7", // ID инфоблока Статьи
      "SECTION_URL" => "/articles/articles_list.php?SECTION_ID=#ID#", 
      "CACHE_TIME" => "3600" 
   )
);

$aMenuLinks = array_merge($aMenuLinks, $aMenuLinksAdd);
?>

6. В нужном месте в страницах вставляете код:
Код
<?$APPLICATION->IncludeComponent(
   "bitrix:menu",
   "files_section_menu",
   Array(
      "ROOT_MENU_TYPE" => "sect", 
      "MAX_LEVEL" => "1", 
      "CHILD_MENU_TYPE" => "left", 
      "USE_EXT" => "Y" 
   )
);?> 

И теперь у Вас есть меню которое состоит из названий подразделов. Каждый пункт будет указывать на файл articles_list.php с ID подраздела, где будут выводиться список статей этого подраздела.
Вывод я организовал на компонентах каталога (мне так нужнее было), ну а Вам любым удобным для Вас способом.

Должно помочь.
ответил 21 Май, 13 от Wildest (500 баллов)
00 голосов
Но ведь в этом случае список статей одной категории не будет включать картинки и анонсы?
ответил 22 Май, 13 от zapekana (180 баллов)
00 голосов
Почему не будет??
Вам надо для одной категори что бы был один анонс и одна картинка??
Если нет, то вы спокойной в каждой из подкатегорий инфоблока Статьи, создаёте элемент в котором есть и анонс и картинки для анонса и т.д.
ответил 10 Авг, 13 от Wildest (500 баллов)
00 голосов
Ну попробую.
ответил 10 Ноя, 13 от zapekana (180 баллов)
00 голосов
Ну что-то геморройно получается создавать в каждой категории по три файла.

Основное я понял - компоненты новостей Битрикса не обрабатывают подразделы. Для чего тогда нужны подразделы, пока остаётся загадкой.

А как подсунуть компоненту bitrix:news.line номер ID инфоблока через адресную строку?
ответил 17 Фев, 14 от zapekana (180 баллов)

Похожие вопросы

0 голосов
9 ответов
спросил 12 Апр, 13 от Kiuas (640 баллов)
0 голосов
2 ответов
0 голосов
2 ответов
спросил 18 Апр, 14 от Tarodar (100 баллов)