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

Импорт через CSV путей к картинкам для анонса

00 голосов
3
Заливаю базу через CSV импорт, в базе есть поле, в котором указан путь до картинки на сайте (все картинки лежат в /upload/pictures). Каждому элементу из базы соотвествует картинка из этой папки, причем картинок всего несколько (около 20), поэтому соответствия должны повторяться.
Битрикс автоматически копирует картинки в папку /upload/iblock/etc и проставляет пути к скопированным картинкам.
Можно ли как то обойти это копирование, чтобы ссылки на картинки анонса импортировались без изменений?

Я пока вижу один способ решения - создать свойство "Путь к картинке", и в шаблоне выводить не PREVIEW_PICTURE, а картинку по этому пути.
Может быть есть лучшее решение?
спросил 04 Фев, 14 от Waerror (100 баллов)

3 Ответы

00 голосов
На мой взгляд это правильное решение
ответил 14 Июнь, 14 от Nelegal (640 баллов)
00 голосов
А что здесь нужно изменить, чтобы появилася новая картинка из свойств


<?if(is_array($arResult["PREVIEW_PICTURE"]) || is_array($arResult["DETAIL_PICTURE"])):?>
[td]
<?if(is_array($arResult["PREVIEW_PICTURE"]) && is_array($arResult["DETAIL_PICTURE"])):?>
<img border="0" src="<?=$arResult["PREVIEW_PICTURE"]["SRC"]?>" width="<?=$arResult["PREVIEW_PICTURE"]["WIDTH"]?>" height="<?=$arResult["PREVIEW_PICTURE"]["HEIGHT"]?>" alt="<?=$arResult["PREVIEW_PICTURE"]["DESCRIPTION"]?>" title="<?=$arResult["NAME"]?>" id="image_<?=$arResult["PREVIEW_PICTURE"]["ID"]?>" style="display:block;cursor:pointer;cursor: hand;" OnClick="document.getElementById('image_<?=$arResult["PREVIEW_PICTURE"]["ID"]?>').style.display='none';document.getElementById('image_<?=$arResult["DETAIL_PICTURE"]["ID"]?>').style.display='block'" />
<img border="0" src="<?=$arResult["DETAIL_PICTURE"]["SRC"]?>" width="<?=$arResult["DETAIL_PICTURE"]["WIDTH"]?>" height="<?=$arResult["DETAIL_PICTURE"]["HEIGHT"]?>" alt="<?=$arResult["DETAIL_PICTURE"]["DESCRIPTION"]?>" title="<?=$arResult["NAME"]?>" id="image_<?=$arResult["DETAIL_PICTURE"]["ID"]?>" style="display:none;cursor:pointer; cursor: hand;" OnClick="document.getElementById('image_<?=$arResult["DETAIL_PICTURE"]["ID"]?>').style.display='none';document.getElementById('image_<?=$arResult["PREVIEW_PICTURE"]["ID"]?>').style.display='block'" />
<?elseif(is_array($arResult["DETAIL_PICTURE"])):?>
<img border="0" src="<?=$arResult["DETAIL_PICTURE"]["SRC"]?>" width="<?=$arResult["DETAIL_PICTURE"]["WIDTH"]?>" height="<?=$arResult["DETAIL_PICTURE"]["HEIGHT"]?>" alt="<?=$arResult["DETAIL_PICTURE"]["DESCRIPTION"]?>" title="<?=$arResult["NAME"]?>" />
<?elseif(is_array($arResult["PREVIEW_PICTURE"])):?>
<img border="0" src="<?=$arResult["PREVIEW_PICTURE"]["SRC"]?>" width="<?=$arResult["PREVIEW_PICTURE"]["WIDTH"]?>" height="<?=$arResult["PREVIEW_PICTURE"]["HEIGHT"]?>" alt="<?=$arResult["PREVIEW_PICTURE"]["DESCRIPTION"]?>" title="<?=$arResult["NAME"]?>" />
<?endif?>
<?if(count($arResult["MORE_PHOTO"])>0):?>
<br /><?=GetMessage("CATALOG_MORE_PHOTO")?>
<?endif;?>
[/td]
ответил 13 Окт, 14 от ronin (160 баллов)
00 голосов
перед всем эти вставить:
Код
echo "<pre>"; print_r($arResult); echo "</pre>";


и будет видно как в этот код вставить картинку.
ответил 13 Фев, 15 от Nelegal (640 баллов)

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

0 голосов
2 ответов
спросил 09 Фев, 15 от аноним
0 голосов
1 ответ
0 голосов
4 ответов
0 голосов
1 ответ
спросил 18 Авг, 13 от Asteria (1,840 баллов)