Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- \Bitrix\Main\Loader::includeModule('iblock');
- $iblockId = 20;
- $propPhoto = 'MORE_PHOTO';
- $propArt = 'CML2_ARTICLE';
- $dirName = 'PHOTO_FOR_IBLOCK_' . $iblockId;
- $arSelect = [
- 'ID', 'IBLOCK_ID',
- 'PROPERTY_' . $propArt,
- 'DETAIL_PICTURE',
- 'PREVIEW_PICTURE'
- ];
- $db = CIblockElement::GetList([], ['IBLOCK_ID' => $iblockId], false ,false, $arSelect);
- $arEls = [];
- while($ob = $db->GetNext()){
- $dbProp = CIBlockElement::GetProperty($iblockId, $ob['ID'], "sort", "asc", array("CODE" => $propPhoto));
- $propVals = [];
- if(!empty($ob['PREVIEW_PICTURE'])) $propVals[] = $ob['PREVIEW_PICTURE'];
- if(!empty($ob['DETAIL_PICTURE'])) $propVals[] = $ob['DETAIL_PICTURE'];
- while ($obProp = $dbProp->GetNext()){
- $propVals[] = $obProp['VALUE'];
- }
- if(count($propVals) == 1 && (int)current($propVals) == 0)
- $propVals = [];
- if(count($propVals) > 0)
- $arEls[$ob['PROPERTY_' . $propArt . '_VALUE']] = $propVals;
- }
- $baseDir = $_SERVER['DOCUMENT_ROOT'] . '/upload/' . $dirName . '/';
- if(!is_dir($baseDir)) mkdir($baseDir, 0777, true);
- foreach($arEls as $art => $photos){
- $dirItem = $baseDir . $art . '/';
- if(!is_dir($dirItem)) mkdir($dirItem, 0777, true);
- foreach($photos as $key => $photoId){
- $path = $_SERVER['DOCUMENT_ROOT'] . CFile::GetPath($photoId);
- $type = array_pop(explode('.', $path));
- copy($path, $dirItem . $key . '.' . $type);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement