Битрикс — как перезаписать картинку анонса из детальной?

Что делать, если при импорте или при любых других условиях у вас не записывается свойство картинка анонса?

Как в битриксе заново сгенерировать картинки анонса

Для этого создадим файл в корне сайта, например import.php — в который запишем код:

<?
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
CModule::IncludeModule("iblock");
CModule::IncludeModule("file");

$ID = 1;//id инфоблока

$arFilter = Array("IBLOCK_ID"=>$ID);
$rsEl = CIBlockElement::GetList(Array(), $arFilter);
while($arEl = $rsEl->GetNext()){ 
   $el = new CIBlockElement;
        $arFields = Array();
   if($arEl["DETAIL_PICTURE"]){
      $arFields['PREVIEW_PICTURE'] = CFile::MakeFileArray($_SERVER["DOCUMENT_ROOT"] . CFile::GetFileArray($arEl["DETAIL_PICTURE"])["SRC"]);
      $arFields['PREVIEW_PICTURE']["del"] = "Y";
         $el->Update($arEl["ID"], $arFields);
   }
}

Указываем ID информационного блока и после запуска в браузере и окончания выполнения скрипта в поле для анонса запишется та же самая картинка что и в детальном.

Если вам необходимо записать фото в превью с учетом ресайза, то скрипт придется доработать.

Если на вашем сайте необходимо выполнить работу по генерации картинок, свяжитесь со мной.

автор: Dmitriy

Занимаюсь веб-разработкой с 2011 года. Посмотреть некоторые из моих работ, а также узнать чуть больше обо мне, вы можете на forwww.ru.

Какие услуги предоставляю:
- Создание сайтов, шаблонов и компонентов на 1С-Битрикс;
- Разработка функционала с нуля и доработка кода на уже созданных проектах;
- Адаптивная вёрстка макетов и натяжка на Битрикс;
- Парсинг файлов и выгрузка на сайт (форматы - CSV, XML, XLSX, JSON)
- Интеграции со сторонними сервисами по API;
- Многоязычные версии и многое другое.

Если у вас остались вопросы, свяжитесь со мной любым удобным для вас способом или оставьте комментарий внизу.
E-mail: dmitriyribka@gmail.com
Skype: cinemacreaterus

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *