Влад Перминов, я бы в цикле удалил все картинки анонса используя CIBlockElement::Update пройдясь по каждому элементу.
|
Влад Перминов, я бы в цикле удалил все картинки анонса используя CIBlockElement::Update пройдясь по каждому элементу.
|
|
|
|
|
я так понимаю мне нужно страничку создать в которой описать цикл, который пробежится по всем разделам инфоблока и удалит картинки? Или есть в битриксе какая то фишка куда я напишу кусочек кода и он его выполнит? |
|||
|
|
|
|
|||
|
|
|
Вот только что-то не понимаю как правильно через командную строку выполнить скрипт... Жалуется что класса такого не знает: Fatal error: Class 'CIBlockSection' not found in /home/u23318/ : eval()'d code on line 1 по этому мануалу пробовал Всё работает а вот CIBlockSection не находит( |
|||
|
|
|
|
Немного сдвинулся с места, но пока ещё не до конца)
Получил список разделов из 13-го инфоблока и в цикле попытаюсь обновить картинку, CIBlockSection::Update($ar_result['ID'],,,true) тут в скобках правда не ясно правда что писать. Ещё нашёл, что можно через CFile::ResizeImageGet эту функцию изменить картинки (получить массив картинок нужных и все их уменьшить). Как правильнее? |
|||
|
|
|
|
Как вариант, в шаблоне где картинки нужны новых размеров, сделать result_modifier.php и в нем отресайзить оригиналы CFile::ResizeImageGet этим, результаты кешируются
про result_modifier.php |
|
|
|
|
Редактировал следующие строки: Было:
|
|||||||
|
|
|
1) Ошибка в твоих изменениях в резалт модифаере кроется в том, что ты пытаешься сделать ресайз из первью картинки, которая и так маленькая. Т.е. ты пытаешься из маленькой картинки сделать большую, что битрикс делать не умеет (да и вообще мало кто умеет). Замени "PICTURE" на "DETAIL_PICTURE" (или в какой там переменной у разделов хранится детальная картинка) 2) Вот код для апдейта превью картинок у элементов(нужно что бы в настройках * стояла галочка генерации превью из детальной в любом случае) :
|
|||||||||||
|
|
|
||||||||||