wefunkpz 1 Жалоба Опубликовано: March 7, 2015 Здравствуйте, уважаемые разработчики Есть необходимость в фиде выгружать не изображения с водяными знаками, а их копии без обработки или превью (на котором отсутстует вотермарк).Что изменить или добавить в коде ?$image_field=trim($this->getConfigValue('apps.yandexrealty.images_field')); $uploadsField=false; $hasUploadify=false; if($image_field!='' && isset($this->form_data_shared[$image_field]) && in_array($this->form_data_shared[$image_field]['type'], array('uploads', 'uploadify_image'))){ if($this->form_data_shared[$image_field]['type']=='uploadify_image'){ $hasUploadify=true; }else{ $uploadsField=$image_field; } }else{ foreach($this->form_data_shared as $model_item){ if($model_item['type']=='uploadify_image'){ $hasUploadify=true; $uploadsField=false; break; }elseif($uploadsField===false && $model_item['type']=='uploads'){ $uploadsField=$model_item['name']; } } } Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
abushyk 694 Жалоба Опубликовано: March 7, 2015 не-не. не то.Нужны 2 условия1. Свежее приложение яндекс выгрузки2. Вы использовали настройку Сохранять картинки без вотермарка с самого начала. Если первое поправимо, то без второго, грубо говоря, никак. ПС. Так же таким требованием, кажется, страдает еще авито. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
wefunkpz 1 Жалоба Опубликовано: March 8, 2015 не-не. не то.Нужны 2 условия1. Свежее приложение яндекс выгрузки2. Вы использовали настройку Сохранять картинки без вотермарка с самого начала. Если первое поправимо, то без второго, грубо говоря, никак. ПС. Так же таким требованием, кажется, страдает еще авито. правильно ли я понимаю, что установив "Сохранять картинки без вотермарка", новые изображения в фиде будут без вотермарков, а на сайте с ними? спасибо за оперативный ответ Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
abushyk 694 Жалоба Опубликовано: March 8, 2015 Нет. Не совсем так. Установив галочку сохранения без вотермарка вы создаете условия для сохранения "чистых" картинок вместе с теми, на которые нанесен вотермарк. А вот это уже дает возможность немного сменить условие вывода картинок и отдавать в фид картинки без водяного знака. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
wefunkpz 1 Жалоба Опубликовано: March 8, 2015 Нет. Не совсем так. Установив галочку сохранения без вотермарка вы создаете условия для сохранения "чистых" картинок вместе с теми, на которые нанесен вотермарк. А вот это уже дает возможность немного сменить условие вывода картинок и отдавать в фид картинки без водяного знака. Окей, как изменить это условие? Где поправить код? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
abushyk 694 Жалоба Опубликовано: March 8, 2015 /apps/yandexrealty/admin/admin.php блокelse{$rs.='<image>http://'.$_SERVER['HTTP_HOST'].SITEBILL_MAIN_URL.'/img/data/'.$v['normal'].'</image>'."\n";}встречается два раза /img/data/ в них нужно заменить на /img/data/nowatermark/ ПС. Правку даю пока по системному файлу. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
ReatEstate 13 Жалоба Опубликовано: August 14, 2016 В настройках галка "Сохранять копии без вотермарка", действительно ли сохранения будут по этому пути - /img/data/nowatermark/ ? Галочка стоит а данный путь нужно самому создавать чтоли? Т.к. Добавляю объекты а данной папки нет и копий без вотермарков нет. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Дмитрий Кондин 690 Жалоба Опубликовано: August 15, 2016 18 часов назад, ReatEstate сказал: В настройках галка "Сохранять копии без вотермарка", действительно ли сохранения будут по этому пути - /img/data/nowatermark/ ? Галочка стоит а данный путь нужно самому создавать чтоли? Т.к. Добавляю объекты а данной папки нет и копий без вотермарков нет. Да, каталог /img/data/nowatermark/ нужно создать самостоятельно. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
banzai72 32 Жалоба Опубликовано: February 23, 2018 В 15.08.2016 в 09:13, rumantic сказал: Да, каталог /img/data/nowatermark/ нужно создать самостоятельно. Скажите, у меня нет в "Настройки - Выгрузка Яндекс.Недвижимость" поля "Системное имя поля модели для хранения названия района области" только поле" Системное имя поля с именем района" Почему?( ведь по требованиям яндекса : region Название субъекта РФ. Необязательный элемент для объектов в Москве и Санкт-Петербурге. district Название района субъекта РФ. locality-name Название населенного пункта. sub-locality-name Район населенного пункта. address Адрес объекта (улица и номер здания). Для загородной недвижимости номер дома указывать необязательно. Из-за этого мне приходиться обобщать районы (и области и населенного пункта в один справочник) Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Chernetskiy 469 Жалоба Опубликовано: February 23, 2018 1 час назад, 72realty сказал: Скажите, у меня нет в "Настройки - Выгрузка Яндекс.Недвижимость" поля "Системное имя поля модели для хранения названия района области" только поле" Системное имя поля с именем района" Почему?( Из-за этого мне приходиться обобщать районы (и области и населенного пункта в один справочник... Стандартно, в CMS Sitebill нет справочника областных районов. Это было как раз продиктовано "необязательностью". Но у меня, например такая ситуация, что только в одном районе есть по 2 одноименных населенных пункта, а сколько их наберется в рамках Московской области? По ходу выгрузки на сторонние порталы стали возникать проблемы с адресацией - портал принимал название населенного пункта и в отсутствии района адресовал его в первый попавшийся ему в списке район, а иногда и на противоположный конец страны. Поскольку ежедневно править кучу объявлений на сторонних порталах - еще то удовольстве, многие стали делать кастомные справочники Районов (области), для последующей выгрузки в составе адреса. А поскольку прикрутка Районов к Областям и Городам (Населенным пунктам) напрямую была не возможна, да и есть ряд вариантов адресации, когда населенные пункты в рамках одного региона имеют федеральную, областную и районную подчиненность, как раз и потребовались Связанные элементы, которые позволяют делать зависимости или использовать справочники как дополнительные (конечные) а не промежуточные. Можно организовать универсальные схемы привязки, например: Страна-Город-Улица Страна-Регион-Город-Улица Страна-Регион-Район-Город-Улица Страна-Регион-Шоссе Страна-Регион-Город-Шоссе Страна-Регион-Город-ж/д станции Страна-Регион-Район-Ж/Д станции Страна-Регион-Город-Район города-Метро Страна-Регион-Город-Улица-Метро или Страна-Регион-Город-Метро-Улица Страна-Регион-Район-Застройщик Страна-Регион-Город-Район города-Нотариус Страна-Регион-Район-Нотариус Город-Метро-Нотариус и т.д., хоть одновременно в разных вариантах. Чтобы не обобщать районы и области в один справочник, как раз и удобно использовать связанные элементы, создавая такую структуру подчиненности справочников, которая нужна вам. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
banzai72 32 Жалоба Опубликовано: February 24, 2018 22 часа назад, Chernetskiy сказал: Стандартно, в CMS Sitebill нет справочника областных районов. Это было как раз продиктовано "необязательностью". Но у меня, например такая ситуация, что только в одном районе есть по 2 одноименных населенных пункта, а сколько их наберется в рамках Московской области? По ходу выгрузки на сторонние порталы стали возникать проблемы с адресацией - портал принимал название населенного пункта и в отсутствии района адресовал его в первый попавшийся ему в списке район, а иногда и на противоположный конец страны. Поскольку ежедневно править кучу объявлений на сторонних порталах - еще то удовольстве, многие стали делать кастомные справочники Районов (области), для последующей выгрузки в составе адреса. А поскольку прикрутка Районов к Областям и Городам (Населенным пунктам) напрямую была не возможна, да и есть ряд вариантов адресации, когда населенные пункты в рамках одного региона имеют федеральную, областную и районную подчиненность, как раз и потребовались Связанные элементы, которые позволяют делать зависимости или использовать справочники как дополнительные (конечные) а не промежуточные. Можно организовать универсальные схемы привязки, например: Страна-Город-Улица Страна-Регион-Город-Улица Страна-Регион-Район-Город-Улица Страна-Регион-Шоссе Страна-Регион-Город-Шоссе Страна-Регион-Город-ж/д станции Страна-Регион-Район-Ж/Д станции Страна-Регион-Город-Район города-Метро Страна-Регион-Город-Улица-Метро или Страна-Регион-Город-Метро-Улица Страна-Регион-Район-Застройщик Страна-Регион-Город-Район города-Нотариус Страна-Регион-Район-Нотариус Город-Метро-Нотариус и т.д., хоть одновременно в разных вариантах. Чтобы не обобщать районы и области в один справочник, как раз и удобно использовать связанные элементы, создавая такую структуру подчиненности справочников, которая нужна вам. Да, я в курсе, что справочника нет. Сделать справочник то не проблема. Сделать связные элементы тоже. Главный вопрос в том, что в приложении "Выгрузка Яндекс.Недвижимость" нет поля для ввода значения "Системное имя поля модели для хранения названия района области(apps.yandexrealty_parser.district_field)" Только "Системное имя поля с именем района(apps.yandexrealty.district_from)" Тогда к примеру как в приложении Yandex.Realty Parser оно есть И в приложении Выгрузка Яндекс.Недвижимость тоже должно быть. Так как приложение должно же соответствовать требованиям яндекса...? Данный вопрос был больше к создателям приложения для выгрузки фида в формате Яндекс, не про справочники а про то, что в приложении Выгрузка Яндекс.Недвижимость должно быть два поля apps.yandexrealty_parser.district_field <district> и apps.yandexrealty.district_from <sub-locality-name> Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Chernetskiy 469 Жалоба Опубликовано: February 25, 2018 Добавь в apps/yandexrealty/admin/admin.php, примерно 300 строка (район для позиции Районы в Настройки - Выгрузка Яндекс.недвижимость, это не обязательно, но позволит настраивать системное имя района и устанавливать единое название района по умолчанию, если район один и он основной): ... if ( !$config_admin->check_config_item('apps.yandexrealty.region_global') ) { $config_admin->addParamToConfig('apps.yandexrealty.region_global','','Единое название региона'); } if ( !$config_admin->check_config_item('apps.yandexrealty.raion_from') ) { $config_admin->addParamToConfig('apps.yandexrealty.raion_from','','Системное имя поля с именем района'); } if ( !$config_admin->check_config_item('apps.yandexrealty.raion_global') ) { $config_admin->addParamToConfig('apps.yandexrealty.raion_global','','Единое название района'); } if ( !$config_admin->check_config_item('apps.yandexrealty.street_from') ) { $config_admin->addParamToConfig('apps.yandexrealty.street_from','','Системное имя поля с именем улицы'); } ... Далее, примерно в 1610 строке, организуем выгрузку (между регионом и городом): ... if($region!=''){ $rs.='<region>'.self::symbolsClear($region).'</region>'."\n"; } $raion=trim($this->getConfigValue('apps.yandexrealty.raion_global')); if($raion==''){ if(''!=trim($this->getConfigValue('apps.yandexrealty.raion_from'))){ $raion_from=trim($this->getConfigValue('apps.yandexrealty.raion_from')); }else{ $raion_from=''; } if($raion_from!='' && isset($data_item[$raion_from])){ $raion=$data_item[$raion_from]; }else{ $raion=$data_item['raion']; } } if($raion!=''){ $rs.='<district>'.self::symbolsClear($raion).'</district>'."\n"; } $city=trim($this->getConfigValue('apps.yandexrealty.city_global')); if($city==''){ ... Забыл добавить, у меня в базе системное имя районов области - raion, он и присутствует в коде. Если название другое - поменяй. Далее, примерно в строке 2784, между обработчиком региона и города вставляем район: ... if(isset($form_data_shared['region_id'])){ $select[]='re.name AS region'; $leftjoin[]='LEFT JOIN '.DB_PREFIX.'_region re USING(region_id)'; } if(isset($form_data_shared['raion_id'])){ $select[]='rn.name AS raion'; $leftjoin[]='LEFT JOIN '.DB_PREFIX.'_raion rn USING(raion_id)'; } if(isset($form_data_shared['city_id'])){ $select[]='ct.name AS city'; $leftjoin[]='LEFT JOIN '.DB_PREFIX.'_city ct ON dt.city_id=ct.city_id'; } ... После этого, районы должны появиться в выгрузке... В принципе, всё делается по аналогии с соседними позициями. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
banzai72 32 Жалоба Опубликовано: February 26, 2018 8 часов назад, Chernetskiy сказал: Добавь в apps/yandexrealty/admin/admin.php, примерно 300 строка (район для позиции Районы в Настройки - Выгрузка Яндекс.недвижимость, это не обязательно, но позволит настраивать системное имя района и устанавливать единое название района по умолчанию, если район один и он основной): ... if ( !$config_admin->check_config_item('apps.yandexrealty.region_global') ) { $config_admin->addParamToConfig('apps.yandexrealty.region_global','','Единое название региона'); } if ( !$config_admin->check_config_item('apps.yandexrealty.raion_from') ) { $config_admin->addParamToConfig('apps.yandexrealty.raion_from','','Системное имя поля с именем района'); } if ( !$config_admin->check_config_item('apps.yandexrealty.raion_global') ) { $config_admin->addParamToConfig('apps.yandexrealty.raion_global','','Единое название района'); } if ( !$config_admin->check_config_item('apps.yandexrealty.street_from') ) { $config_admin->addParamToConfig('apps.yandexrealty.street_from','','Системное имя поля с именем улицы'); } ... Далее, примерно в 1610 строке, организуем выгрузку (между регионом и городом): ... if($region!=''){ $rs.='<region>'.self::symbolsClear($region).'</region>'."\n"; } $raion=trim($this->getConfigValue('apps.yandexrealty.raion_global')); if($raion==''){ if(''!=trim($this->getConfigValue('apps.yandexrealty.raion_from'))){ $raion_from=trim($this->getConfigValue('apps.yandexrealty.raion_from')); }else{ $raion_from=''; } if($raion_from!='' && isset($data_item[$raion_from])){ $raion=$data_item[$raion_from]; }else{ $raion=$data_item['raion']; } } if($raion!=''){ $rs.='<district>'.self::symbolsClear($raion).'</district>'."\n"; } $city=trim($this->getConfigValue('apps.yandexrealty.city_global')); if($city==''){ ... Забыл добавить, у меня в базе системное имя районов области - raion, он и присутствует в коде. Если название другое - поменяй. Далее, примерно в строке 2784, между обработчиком региона и города вставляем район: ... if(isset($form_data_shared['region_id'])){ $select[]='re.name AS region'; $leftjoin[]='LEFT JOIN '.DB_PREFIX.'_region re USING(region_id)'; } if(isset($form_data_shared['raion_id'])){ $select[]='rn.name AS raion'; $leftjoin[]='LEFT JOIN '.DB_PREFIX.'_raion rn USING(raion_id)'; } if(isset($form_data_shared['city_id'])){ $select[]='ct.name AS city'; $leftjoin[]='LEFT JOIN '.DB_PREFIX.'_city ct ON dt.city_id=ct.city_id'; } ... После этого, районы должны появиться в выгрузке... В принципе, всё делается по аналогии с соседними позициями. Спасибо! Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
banzai72 32 Жалоба Опубликовано: June 17, 2018 Пишу просто сказать спасибо разработчикам за качественный продукт и всем кто помогал в настройке. В частности Дмитрию, abushyk и Игорю! У нас на яндексе при выгрузке по фиду 100% валидности! 2 Chernetskiy и Дмитрий Кондин reacted to this Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах