Recommended Posts

$ret='<room-space><value>'.implode('</value><unit>кв.м</unit></room-space><room

====>

$rs.='<room-space><value>'.implode('</value><unit>кв.м</unit></room-space><room .............................

А от мы неведомой переменной $ret сообщаем нашу строку с хмл и потому в вывод она не приходит))

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Есть еще одна неувязочка, при передаче адреса объекта в XML. В частности, если в поселке нет улиц а только нумерация домов, то информация передается так:

<location>
<country>Россия</country>
<region>Московская область</region>
<district>Раменский район</district>
<locality-name>Электроизолятор</locality-name>
<address>, 14</address>
</location>

вот эта запятая у номера дома как раз и портит всю картину, поскольку расценивается принимающей стороной как ошибочный параметр, и номер дома не читается, а соответственно, в отсутствии номера дома и объявление не принимается, т.к. обязательный параметр отсутствует. Как-бы это победить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Похоже, отбой! Ввели меня в заблуждение с адресацией админы rentzilla.ru, привет я им передал, пусть дорабатывают свой обработчик... :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Появилась официальная информация о платности приема объявлений в Яндекс.Недвижимость

с 23 ноября поменяется схема работы Яндекс.Недвижимости с партнёрами, которые используют автозагрузку объявлений. Размещение одного объявления через XML будет стоить 1 рубль в сутки.
Эти изменения коснутся только продажи жилья на вторичном рынке Москвы и Московской области.
 

Подключается это в личном кабинете партнера. Пока этого момента там нет, но присутствуют:

  • Продвижение - 3 руб./сутки
  • Размещение объявлений в разделе "Коммерческая"  -1 руб./сутки
  • Премиум размещение - 39 руб./сутки
  • Поднятие  -19 руб./сутки

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Обратил внимание, что в формат выгрузки Яндекса включены платные услуги, которые можно применить к объявлению у себя на сайте и информация уйдет файлом XML в Яндекс.Недвижимость. Наверняка скоро и остальные площадки это подхватят, принимая ХМL Яндекса.

Чтобы упростить себе жизнь, надо в data добавить строку vas (Продвижение) c выбором параметра из списка, наверное лучше select_box'ом {~~нет}{premium~~премиум}{raise~~поднятие}{promotion~~продвижение} , где:

  • premiumПремиум-размещение за 39 рублей за 1 объявление в сутки;
  • raiseПоднятие — 19 рублей за 1 объявление в сутки;
  • promotion - Продвижение — 3 рубля за 1 объявление в сутки.

параметр vas надо добавить и в admin.php модуля выгрузки yandexrealty, чтобы выгружалось.

Понятное дело, что необходимая сумма должна быть размещена на балансе в ЛК Яндекс.Недвижимости. Минимальная сумма пополнения - 5000 руб.

С 1 февраля все объявления некоммерческой недвижимости так-же будут платными - 1 рубль за 1 объявление в сутки.

Осталось дело за малым, прикрутить значки типа:

C8bE6W2bapbW4qZtZ0O2_puXTkw.png - премиум,  HopzBYEaebHvLVGFfd0ttOFVu8g.png - поднятие,  fBxIOEnLRLeq1tUka6Qs4uUXexE.png - продвижение в список объявлений в личном кабинете, чтобы расходы были на виду :) 

 

Поправьте, если строку для селект-бокса написал не правильно, дополнил пустым параметром нет, чтобы можно было отключать параметры продвижения или изначально не выбирать.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
В 16.09.2016 в 16:01, Chernetskiy сказал:

Если кому интересен вывод в фиде названия агентства и ссылка на него, в контактах к каждому объявлению, то сделал так (примерно 974 строка):


if($exporter_type=='a'){
$rs.='<category>agency</category>'."\n";
$rs.='<organization>ЦЕНТР НЕДВИЖИМОСТИ</organization>'."\n";
$rs.='<url>http://realty-centrum.com</url>'."\n";

Работает.

А если еще и нужна выгрузка фото агента с каждым объявлением, то добавил примерно в 922 строке следующее:


$rs.='<photo>http://realty-centrum.com/img/data/user/'.self::symbolsClear($user['imgfile']).'</photo>'."\n";

Вроде тоже работает.

Добрый вечер! Сделал как вы написали и нечего не изменилось. И еще проблема с дополнительными полями.

Поле lot-type (ИЖС, садоводство) не показывает в выгрузке.

В admin.php: if(isset($form_data_shared['lot_type'])/* && $data_item['lot_type']!=''*/){
                            if($form_data_shared['lot_type']['type']=='select_box' && intval($data_item['lot_type'])!=0 && isset($form_data_shared['lot_type']['select_data'][$data_item['lot_type']])){
                                $rs.='<lot-type>'.self::symbolsClear($form_data_shared['lot_type']['select_data'][$data_item['lot_type']]).'</lot-type>'."\n";
                            }elseif($form_data_shared['lot_type']['type']!='select_box' &&  $data_item['lot_type']!=''){
                                $rs.='<lot-type>'.self::symbolsClear($data_item['lot_type']).'</lot-type>'."\n";
                            }
                            //$rs.='<lot-type>'.self::symbolsClear($data_item['lot_type']).'</lot-type>'."\n";
                        }

Поле walls тоже не видит:

if(isset($form_data_shared['building_type']) && isset($data_item['building_type'])/* && $data_item['building_type']!=''*/){
                    if($form_data_shared['building_type']['type']=='select_box' && intval($data_item['building_type'])!=0 && isset($form_data_shared['building_type']['select_data'][$data_item['building_type']])){
                        $rs.='<building-type>'.self::symbolsClear($form_data_shared['building_type']['select_data'][$data_item['building_type']]).'</building-type>'."\n";
                    }elseif($form_data_shared['building_type']['type']!='select_box' && $data_item['building_type']!=''){
                        $rs.='<building-type>'.self::symbolsClear($data_item['building_type']).'</building-type>'."\n";
                    }
                    //$rs.='<building-type>'.self::symbolsClear($data_item['building_type']).'</building-type>'."\n";
                }elseif(isset($form_data_shared['walls']) && isset($data_item['walls'])/* && $data_item['walls']!=''*/){
                    if($form_data_shared['walls']['type']=='select_box' && intval($data_item['walls'])!=0 && isset($form_data_shared['walls']['select_data'][$data_item['walls']])){
                        $rs.='<building-type>'.self::symbolsClear($form_data_shared['walls']['select_data'][$data_item['walls']]).'</building-type>'."\n";
                    }elseif($form_data_shared['walls']['type']!='select_box' && $data_item['walls']!=''){
                        $rs.='<building-type>'.self::symbolsClear($data_item['walls']).'</building-type>'."\n";
                    }
              

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня используется параметр building-type, с ним и выгружается. Параметр walls я не использую (поскольку тоже-самое), по этому сказать не могу что у вас с выгрузкой. Код у меня вроде такой-же:

if(isset($form_data_shared['building_type']) && isset($data_item['building_type'])/* && $data_item['building_type']!=''*/){
if($form_data_shared['building_type']['type']=='select_box' && intval($data_item['building_type'])!=0 && isset($form_data_shared['building_type'
['select_data'][$data_item['building_type']])){
$rs.='<building-type>'.self::symbolsClear($form_data_shared['building_type']['select_data'][$data_item['building_type']]).'</building-type>'."\n";
}elseif($form_data_shared['building_type']['type']!='select_box' && $data_item['building_type']!=''){
$rs.='<building-type>'.self::symbolsClear($data_item['building_type']).'</building-type>'."\n";
}
//$rs.='<building-type>'.self::symbolsClear($data_item['building_type']).'</building-type>'."\n";
}elseif(isset($form_data_shared['walls']) && isset($data_item['walls'])/* && $data_item['walls']!=''*/){
if($form_data_shared['walls']['type']=='select_box' && intval($data_item['walls'])!=0 && isset($form_data_shared['walls']['select_data'][$data_item['walls']])){
$rs.='<building-type>'.self::symbolsClear($form_data_shared['walls']['select_data'][$data_item['walls']]).'</building-type>'."\n";
}elseif($form_data_shared['walls']['type']!='select_box' && $data_item['walls']!=''){
$rs.='<building-type>'.self::symbolsClear($data_item['walls']).'</building-type>'."\n";
}
}

Относительно lot-type, код вроде такой-же:

if(isset($form_data_shared['lot_type'])/* && $data_item['lot_type']!=''*/){
if($form_data_shared['lot_type']['type']=='select_box' && intval($data_item['lot_type'])!=0 && isset($form_data_shared['lot_type']['select_data'][$data_item['lot_type']])){
$rs.='<lot-type>'.self::symbolsClear($form_data_shared['lot_type']['select_data'][$data_item['lot_type']]).'</lot-type>'."\n";
}elseif($form_data_shared['lot_type']['type']!='select_box' &&  $data_item['lot_type']!=''){
$rs.='<lot-type>'.self::symbolsClear($data_item['lot_type']).'</lot-type>'."\n";
}
//$rs.='<lot-type>'.self::symbolsClear($data_item['lot_type']).'</lot-type>'."\n";
}

Но у меня в data этот параметр является селектбоксом со значениями {0~~не выбрано}{1~~ИЖС}{2~~садоводство}

что соответствует примерно 1889 строке в admin.php (Яндекс выгрузки):

$form_data['data']['lot_type']['select_data'] = array('0' => 'не выбрано', '1' => 'ИЖC', '2' => 'садоводство');

Если значения в селектбоксе вы указали по другому, то возможно из-за этого и не выгружается. Сравните и другие параметры селектбоксов со значениями преобразователей в admin.php

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Специально для выгрузки создал форму lot_type (ИЖС и садоводство) видимую только сотрудникам, т.к. на сайте у меня выводится лпх, днп и т.д.. В 1889 строке тоже самое.

Сейчас очистил поле "Алиас приложения" в настройках, появилось название организации и урл сайта, но больше никаких изменений

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
12 часа назад, Johnny Bravo сказал:

Специально для выгрузки создал форму lot_type (ИЖС и садоводство) видимую только сотрудникам, т.к. на сайте у меня выводится лпх, днп и т.д.. В 1889 строке тоже самое.

Сейчас очистил поле "Алиас приложения" в настройках, появилось название организации и урл сайта, но больше никаких изменений

Кэш выгрузки в настьройках обнулен? А-то вносимые изменения в выгрузке могут только завтра появиться :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 час назад, Chernetskiy сказал:

Кэш выгрузки в настьройках обнулен? А-то вносимые изменения в выгрузке могут только завтра появиться :)

У меня не выгружается в файл. Изменения сразу происходят

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Поле lot_type, тип select_box, ключи вариантов ЧИСЛОВЫЕ!!!!

Не {садоводство~~садоводство}, а {1~~садоводство}

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

в принципе могли бы быть для данного случая и текстовые ключи, но текстовые ключи-это зло, поэтому поддержку их я буду сокращать до минимума.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
4 часа назад, abushyk сказал:

Поле lot_type, тип select_box, ключи вариантов ЧИСЛОВЫЕ!!!!

Не {садоводство~~садоводство}, а {1~~садоводство}

А я об этом вчера писал выше, но прочитать и проверить не судьба... :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Виноват, не обратил внимания на числа=)

У меня другой вопрос нарисовался. Как убрать из выгрузки чекбоксы со значением 0?

Сейчас чекбоксы показываются во всех категориях.

Пример в категории участки:

<rooms-offered>0</rooms-offered>
<phone>0</phone>
<internet>0</internet>
 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
8 часов назад, Johnny Bravo сказал:

Виноват, не обратил внимания на числа=)

У меня другой вопрос нарисовался. Как убрать из выгрузки чекбоксы со значением 0?

Сейчас чекбоксы показываются во всех категориях.

Пример в категории участки:

<rooms-offered>0</rooms-offered>
<phone>0</phone>
<internet>0</internet>

Согласно требований Яндекса, только один чекбокс должен иметь значение 1 или ничего (не помню какой, где-то выше писалось, я сделал), остальные чекбоксы должны иметь значение 0/1 или нет/да. То, что они показываются в выгрузке - не критично, Яндекс не нужные позиции грузить не будет. С другой стороны, в data можно привязать эти чекбоксы только к тем объектам недвижимости, где они реально используются, например смысл привязывать телефон или количество комнат к земельным участкам или гаражам? Соответственно, при заполнении объявления портянка позиций к заполнению будет меньше, да и в выгрузке нулей не будет, не используемые позиции не будут показываться на странице объявления.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, Chernetskiy сказал:

Согласно требований Яндекса, только один чекбокс должен иметь значение 1 или ничего (не помню какой, где-то выше писалось, я сделал), остальные чекбоксы должны иметь значение 0/1 или нет/да. То, что они показываются в выгрузке - не критично, Яндекс не нужные позиции грузить не будет. С другой стороны, в data можно привязать эти чекбоксы только к тем объектам недвижимости, где они реально используются, например смысл привязывать телефон или количество комнат к земельным участкам или гаражам? Соответственно, при заполнении объявления портянка позиций к заполнению будет меньше, да и в выгрузке нулей не будет, не используемые позиции не будут показываться на странице объявления.

В дата все привязано к своим категориям. А вот в выгрузке показываются все чекбоксы.

Ради интереса, посмотрел вашу выгрузку, у вас тоже самое.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 час назад, Johnny Bravo сказал:

В дата все привязано к своим категориям. А вот в выгрузке показываются все чекбоксы.

Ради интереса, посмотрел вашу выгрузку, у вас тоже самое.

В связи с этим какие-то проблемы возникают? :)

А значи, нечего париться. Лучше пару статей на сайт написать :) 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

"юридически" замечание правильное. и, хотя, оно не влияет на правильность фида в целом, логически будет правильно не выводить. будет добавлено в последующих обновлениях.

20 часов назад, Chernetskiy сказал:

В связи с этим какие-то проблемы возникают?

разе что размер фида. на каждый объект по 50 лишних байт. если объектов много, то фид пухнет от ненужных значений. иногда это довольно критично, как для самой выгрузки (в меньшей степени), так и для принимающей стороны (чем больше фид, тем дольше его вытягивает, тем больше вероятность, что его просто может недокачать).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, abushyk сказал:

"юридически" замечание правильное. и, хотя, оно не влияет на правильность фида в целом, логически будет правильно не выводить. будет добавлено в последующих обновлениях.

разе что размер фида. на каждый объект по 50 лишних байт. если объектов много, то фид пухнет от ненужных значений. иногда это довольно критично, как для самой выгрузки (в меньшей степени), так и для принимающей стороны (чем больше фид, тем дольше его вытягивает, тем больше вероятность, что его просто может недокачать).

Константин, в большинстве своем с сайтов выгружаем 100-200 объектов. Это не 10000 объектов чтобы голову ломать о размере выгрузки и его оптимизации. :)  

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А если забыть поставить галочки, то возможна потеря потенциальных клиентов. Например на сайте kvmeter.ru, чекбоксы со значением 0, показываются как отсутствие коммуникаций и т.д.

отметки.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
15 минут назад, Johnny Bravo сказал:

А если забыть поставить галочки, то возможна потеря потенциальных клиентов. Например на сайте kvmeter.ru, чекбоксы со значением 0, показываются как отсутствие коммуникаций и т.д.

отметки.jpg

Вот я о том и говорю, даже больше... Одно дело, когда на стороннем портале заполняешь объявление и некоторые чекбоксы не отмечаешь, портал при сохранении это записывает как 0, и другое дело, когда объявления загружаются фидом или файлом XML, а вместо необходимых порталу параметров с 0 (неактивно), приходят параметры с пустым значением или не приходят вовсе (оптимизировали объем выгрузки :) ), то принимающая сторона может вовсе не принять объявление из-за отсутствия необходимых параметров или их неправильности при наличии - вместо 0 - пусто, т.е. объявление считается не заполненным.

Яндекс немного проще относится к набору параметров в выгрузке и их соответствию требованиям, хотя указывает, что должен быть 0 или 1 а не пустота. Но другие порталы, которые принимают выгрузку Яндекса строже её проверяют и к вам могут возникнуть вопросы о несоответствии выгрузки требованиям Яндекса. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Как раз наоборот, лучше, чтобы приходили пустыми, т.к. если стоит значение 0, то сайт на который выгружаем, ставит как отсутствие этих параметров. А если было бы пусто, то на выгружаемом сайте эти параметры не отображались

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Похожие публикации

    • Автор: Chernetskiy
      После очередного обновления слетела выгрузка земельных участков файлом выгрузки формата XML Яндекс.Недвижимость.
      Поправил файл admin.php для модуля выгрузки и внес некоторые дополнения/правки.
      Если необходимо решить вопрос с выгрузкой по быстрому, заходим на хостинг в apps/yandexrealty/admin/, сохраняем или переименовываем имеющийся файл admin.php в admin.bak и загружаем этот файл.
      Что изменено:
      добавлены параметры для выгрузки земельных участков (ИЖС, садовые) добавлен в выгрузку параметр raion (районы области) добавлен в выгрузку параметр direction (направления, шоссе) добавлен в выгрузку параметр railway_station (станции ж/д) параметры площадей комнат, если указываются на сайте как 10/12/18, выгружаются отдельно для каждой комнаты добавлен в выгрузку параметр lot-number (номер лота) - для показа на сторонних сайтах  номера объявления в вашей базе добавлены соответствия валют в выгрузку - спецсимволов рубля (₽), фунта серлингов (£), гривны (₴), если на сайте валюты указаны спецсимволами. Чуть не забыл, за ненадобностью удалил из файла Беларусский рубль и Казахский теньге, мне не надо было   добавлена ссылка на сайт в выгрузку к сведениями об агенте - в файле найдите https://realty-centrum.com и поменяйте на свою! исправлены/добавлены значения некоторых параметров в выгрузку (ремонт, балконы, покрытие пола и т.п.) Для изучения подробностей, откройте в Notepad++ этот файл и ваш, воспользуйтесь плагином Compare и посмотрите разницу в коде
    • Автор: alex15.master
      Добрый день! Прошу помощи!!!
      Ситуация такая - есть сайт на вашей CMS и шаблон Realia, есть модуль выгрузки в Яндекс.Недвижимость.
      Все прописал подал заявку, но сайт не принимают......написал в саппорт, - сообщение прикрепляю...
      помогите разобраться....
      Скрин из админки модуля тоже прикрепляю....



    • Автор: Владимир
      Это лучший из всех русскоязычных скриптов потому,  что есть выгрузка в Яндекс-недвижимость! Каждый сайт имеет возможность появиться первым по результатам поисковых запросов в Яндексе, если ваши пользователи будут указывать номер дома (сделайте таковое обязательным)!  Для сайта такого типа необходимо, чтоб "Заявка" отправлялась не владельцу агентства, а автору объявления. НО! если все объявления будут отправляться на один е-мейл агентства,  то Яндекс-Недв. сочтет таковой сайт сайтом "Сервисом по бронированию», а согласно его правилам (цитирую) "партнером Яндекс.Недвижимости не может стать агентство недвижимости и сервис по бронированию недвижимости или компания-застройщик." http://help.yandex.ru/webmaster/realty/conditions.xml  Я переписывался с Я-Н и там ответили, что такой сайт они не примут в партнеры, а рассмотреть новый фид в формате XML (YRL) Я-Н может, согласно его правилам,  через 3 месяца (так же и пишут на форумах).
       
      Предлагаю всем желающим сброситься на таковую доработку и заплатить группе технической поддержки!  Потому что доработка, набор объявлений, срок рассмотрения Яндексом займут месяцы. Вижу еще оптимизации под Я-Н, но о них после «почты».
      С уважением, к Дмитрию и ко всем форумчанам, Владимир.