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


Росгосстрах Авто [CPS] RU

Вывод инфоблока Статьи на главную страницу

00 голосов
5
Добрый день.

Добавил на главную страницу компонент Список новостей (bitrix:news.list) настроил его на инфоблок Статьи. Настроил его аналогично инфоблоку Новости. Страница имеет вид:
Рисунок

Что нужно поменять, чтобы в публичной части инфоблока Статьи вместо текста заголовка и текста ссылки "Новости" отображался текст "Статьи" (необходимые области для замены подчеркнул красной линией).

Я так предполагаю необходимо редактировать шаблон компонента, в моем случае main (легкий шаблон)...
спросил 16 Дек, 13 от MeGa4el (260 баллов)

5 Ответы

00 голосов
Код шаблона компонента main (Легкий шаблон).

Код
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>

Код
<? if (count($arResult["ITEMS"]) < 1)
 return;
?>
<h2><a href="<?=SITE_DIR?>news/rss/" title="<?=GetMessage("SDNW_RSS")?>" class="rss-icon"></a><?=GetMessage("SDNW_TITLE")?></h2>
<dl class="block-list">
<?foreach($arResult["ITEMS"] as $arItem):?>
 <dt><span><?=$arItem["DISPLAY_ACTIVE_FROM"]?></span> <a href="<?=$arItem["DETAIL_PAGE_URL"]?>"><?=$arItem["NAME"]?></a></dt>
 <dd><?=(strlen($arItem["PREVIEW_TEXT"])> 0 ? $arItem["PREVIEW_TEXT"] : '')?></dd>
<?endforeach;?>
</dl>

Код
<a href="<?=SITE_DIR?>news/"><?=GetMessage("SDNW_ALLNEWS")?></a>


Я понял что переменная SDNW_TITLE отвечает за текст заголовка (в моем случае "Новости магазина", SDNW_ALLNEWS за текст ссылки (в моем случае "все новости". А код <a href="<?=SITE_DIR?>news/"> за адресс самой ссылки (в моем случае /news).

Помогите заменить эти части кода, чтобы автоматически вбивались данные в:

- заголовок инфоблока
- текст ссылки
- ссылку

в зависимости от выбранного инфоблока.
ответил 25 Фев, 14 от MeGa4el (260 баллов)
00 голосов
Уверен что многие изменяли этот код на своих сайтах, ну подскажите пожалуйста...
ответил 16 Июнь, 14 от MeGa4el (260 баллов)
00 голосов
На данном этапе вместо

Код
<a href="<?=SITE_DIR?>news/"><?=GetMessage("SDNW_ALLNEWS")?></a>

ввел

Код
<a href="<?=SITE_DIR?><?=$arItem["IBLOCK_CODE"]?>/">все <?=$arItem["IBLOCK_CODE"]?></a>

Теперь создается ссылка для каждого инфоблока индивидуально (для Статей: /articles, для Новостей: /news). Не могу только понять с помощью какой переменной вывести название инфоблока, пока додумался как вывести код инфоблока. Выводит для статей: все articles, для новостей: все news. Нужно чтобы вместо кода инфоблока выводило его название, что нужно поменять вместо IBLOCK_CODE? 
ответил 15 Окт, 14 от MeGa4el (260 баллов)
00 голосов
не пробовали выводить результирующие массивы методом?
Код
 echo '<pre>'; print_r($arItem); echo '</pre>';


посмотрите, может найдете нужный ключ вместо IBLOCK_CODE
ответил 15 Фев, 15 от IngriT (340 баллов)
00 голосов
Цитата
denis_orlov пишет:
не пробовали выводить результирующие массивы методом?




Код


echo '<pre>'; print_r($arItem); echo '</pre>';

посмотрите, может найдете нужный ключ вместо IBLOCK_CODE
А куда это правильно вставить чтобы работало? И что должно произойти при правильной работе?
ответил 26 Май, 15 от MeGa4el (260 баллов)

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

0 голосов
8 ответов
0 голосов
5 ответов
0 голосов
4 ответов
спросил 23 Янв, 14 от PycJluk (100 баллов)
0 голосов
4 ответов