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

Как отредактировать стандартный компонент Фотографии раздела (bitrix:photo.section)?

00 голосов
3
Возникла необходимость создать всплывающие картинки, подробнее я писала в созданной одноименной теме. Однако для реализации моей задачи необходимо знать текст анонса или подробно, который храниться в инфоблоке. Благодаря, Артёму Шевцову, а именно его подсказки, просмотреть в шаблоне массив:
Код
<?
echo '<pre>'.print_r($arItem).'</pre>';
?>

Я обнаружила, что так необходимый мне параметр
Код
[DETAIL_TEXT]
в шаблоне компонента отсутствует.
Подскажите, пожалуйста, можно ли как-то отредактировать компонент и его шаблон, чтобы получить этот параметр.
спросил 04 Апр, 14 от asdasdffg (280 баллов)

3 Ответы

00 голосов
Кастомизировать шаблон нужного вам компонента.
В режиме разработка в меню компонента выберите скопировать шаблон и отредактируйте так как вам надо.
Если я не ошибаюсь это неплохо описано в документации.
PS: ответ не полон, рано или поздно я научусь читать раньше чем писать.
ответил 20 Окт, 14 от Dragonsha (220 баллов)
00 голосов
Цитата
Денис Диденко пишет:
Кастомизировать шаблон нужного вам компонента.
В режиме разработка в меню компонента выберите скопировать шаблон и отредактируйте так как вам надо.
Если я не ошибаюсь это неплохо описано в документации.

Я понимаю, что можно так отредактировать шаблон, просто не могу понять, что надо добавить и куда, чтобы получить значение параметра [DETAIL_TEXT]
Вот шаблон компонента в 15 строке(примерно) alt="<?=$arItem["NAME"]?>", мне надо чтобы вместо имени брался текст из "Подробно" инфоблока. Однако в шаблоне компонента нет такого параметра (Вот и не знаю, чтобы еще такого сделать, чтобы получить значение.
Заранее прошу прощения за то, что кидаю шаблон целыми кусками, просто я не разбираюсь в программной части битрикса. А сделать как-то надо, потому что это последнее, что осталось сделать

Код
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>
<div class="photo-section">
<?if($arParams["DISPLAY_TOP_PAGER"]):?>
   <?=$arResult["NAV_STRING"]?><br />
<?endif;?>
<table cellpadding="0" cellspacing="0" border="0" class="data-table">
   <?foreach($arResult["ROWS"] as $arItems):?>
      <tr class="head-row" valign="top">
      <?foreach($arItems as $arItem):?>
         <?if(is_array($arItem)):?>
            <td  width="<?=$arResult["TD_WIDTH"]?>">
               &nbsp;
               <?if($arResult["USER_HAVE_ACCESS"]):?>
                  <?if(is_array($arItem["PICTURE"])):?>
                     <a class="gallery" rel="group" href="<?=$arItem["DETAIL_PICTURE"]["SRC"]?>"><img border="0" src="<?=$arItem["PICTURE"]["SRC"]?>" width="<?=$arItem["PICTURE"]["WIDTH"]?>" height="<?=$arItem["PICTURE"]["HEIGHT"]?>" alt="<?=$arItem["NAME"]?>" title="<?=$arItem["NAME"]?>"/></a><br />
                  <?endif?>
               <?else:?>
                  <?if(is_array($arItem["PICTURE"])):?>
                     <img border="0" src="<?=$arItem["PICTURE"]["SRC"]?>" width="<?=$arItem["PICTURE"]["WIDTH"]?>" height="<?=$arItem["PICTURE"]["HEIGHT"]?>" alt="<?=$arItem["NAME"]?>" title="<?=$arItem["NAME"]?>" /><br />
                  <?endif?>
               <?endif?>
            </td>
         <?else:?>
            <td width="<?=$arResult["TD_WIDTH"]?>" rowspan="<?=$arResult["nRowsPerItem"]?>">
               &nbsp;
            </td>
         <?endif;?>
      <?endforeach?>
      </tr>
      <tr class="data-row">
      <?foreach($arItems as $arItem):?>
         <?if(is_array($arItem)):?>
            <th valign="top" width="<?=$arResult["TD_WIDTH"]?>" class="data-cell">
               &nbsp;
               <?if($arResult["USER_HAVE_ACCESS"]):?>
                  <a target=”blank” href="<?=$arItem["DETAIL_PAGE_URL"]?>"><?=$arItem["NAME"]?><?if($arParams["USE_RATING"] && $arItem["PROPERTIES"]["rating"]["VALUE"]) echo "(".$arItem["PROPERTIES"]["rating"]["VALUE"].")"?></a><br />
               <?else:?>
                  <?=$arItem["NAME"]?><?if($arParams["USE_RATING"] && $arItem["PROPERTIES"]["rating"]["VALUE"]) echo "(".$arItem["PROPERTIES"]["rating"]["VALUE"].")"?><br />
               <?endif?>
            </th>
         <?endif;?>
      <?endforeach?>
      </tr>
      <?if($arResult["bDisplayFields"]):?>
      <tr class="data-row">
      <?foreach($arItems as $arItem):?>
         <?if(is_array($arItem)):?>
            <th valign="top" width="<?=$arResult["TD_WIDTH"]?>" class=&q
ответил 19 Фев, 15 от asdasdffg (280 баллов)
00 голосов
Тогда скажите кто бы мог это сделать и сколько мне это будет стоить, пишите в сообщения.
ответил 30 Май, 15 от asdasdffg (280 баллов)

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

0 голосов
2 ответов
спросил 07 Март, 14 от Aesthete (100 баллов)
0 голосов
2 ответов
спросил 31 Май, 13 от Jugolo (180 баллов)
0 голосов
1 ответ
0 голосов
3 ответов