Экспорт объявлений в PDF (приложение)
Автор:
Дмитрий Кондин, в Выгрузки/Загрузки
-
Похожие публикации
-
Автор: viko777
Здравствуйте.
Я, Колкер Виктор Наумович - Частный риелтор.
Служба в ВС СССР до 1991 г.
Полковник в отставке.
С 1992 г. Работал с недвижимостью в качестве Учредителя, Генерального директора нескольких ООО, ЗАО и ИП.
С 2013 руководил одним из отделений ведущего АН в Москве.
Помогу продать Вашу квартиру, и/или купить кв. по Вашему Бюджету, а также сдать, или снять кв. в Москве.
Никаких Предоплат.
Полностью сопровождаю всю Сделку от подбора Покупателя до подписания Акта Приема-Передачи.
Моя комиссия составляет % от суммы Продажи Вашей кв-ры, но Никогда не больше 2%.
При Покупке кв-ры моя комиссия Никогда не бывает выше 100.000 руб.
Любая консультация по вопросам недвижимости – Бесплатно.
Если у Вас уже есть Покупатель и/или Вам просто нужен Специалист для обеспечения Безопасности и сопровождение СДЕЛКИ, звоните, пишите - договоримся на Ваших условиях.
Вы можете узнать всю информацию обо мне, набрав в любом браузере (поисковике) мои Ф.И.О., или адрес моей Эл.почты: 7983420@rambler.ru
-
Автор: Анна Иванна
На сканере недвижимости http://www.etown.ru/ поступают данные от сайтов, на которых реально работают риэлторы.
Также подключен парсер объявлений с досок объявлений avito.ru, irr.ru, realty.yandex.ru, cian.ru, sob.ru, youla.io, n1.ru, egent.ru, mirkvartir.ru и moyareklama.ru
1. Чтобы получить доступ к отсканированным собственникам регистрируемся тут https://www.etown.ru/
2. Подключаем тариф Премиум
3. После оплаты вы увидите это сообщение и переходим во вкладку База собственников
4. Теперь у нас есть доступ к скрытым полям телефонов собственников
Иконкой с глазом можно посмотреть подробности объекта, перейти на страничку объекта и посмотреть фотографии.
5. Если нужно отфильтровать по определенному гороуд объявления, тогда используем фильтр как показано на скриншоте. Если вы не нашли объявления по своему городу напишите нам на почту dkondin@gmail.com и мы добавим ваш город в парсер.
Можно добавлять в фильтр несколько городов
Также есть сканер для объявлений с авито.
Они сами зарегистрировались по партнерской программе тут.
В чем преимущество etown.ru ?
В том, что когда объявления попадают на сайт, то вы получаете обратно ссылку на ваш сайт. Таким образом увеличивается поток трафика.
Основной поток квартир мы получаем с одного источника, исключающего информацию, размещённую агенствами. То есть, объявления от собственников. Сканер платный, 500р в месяц. Но, безумно выгодно. Огромнейшая экономия времени. За сутки сканер выдаёт нам 20-30 квартир (аренда), только по нашему городу. Автоматически. Только обновляй страницу.
http://rent-scaner.ru/
Вот, собственно ссылка. У кого есть более дешёвые, бесплатные или альтернативные сайты - делитесь.
-
Автор: Дмитрий Кондин
Агент недвижимости без парсера, это как таксист без автомобиля.
Чтобы объять необъятное, нужно использовать инструменты для парсинга площадок с объявлениями недвижимости. Чем быстрее вы получите объявление от собственника, тем больше шанс совершить выгодную сделку.
В этом видео я подробно рассказываю о том, как настраивается парсер и какой результат получает в итоге агентство недвижимости.
Цены и условия приобретения тут https://www.sitebill.ru/ads-api-parser/
Парсер недвижимости только для CMS Sitebill https://www.sitebill.ru/
-
Автор: banzai72
посоветуйте пожалуйста, что прописать в шаблоне PDF, что бы в нем было не одно фото а все(или несколько).
Сейчас такой
А нужно, что то такое
Код у меня в шаблоне PDF такой:
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
{literal}
<style>
@page { margin: 0px; }
body { margin: 20px 20px 200px 20px; font-family: "verdana"; font-size: 14px;}
.pg {
width: 100%;
/*border: 1px solid silver;*/
}
.title {
font-size: 18px;
}
.optiontable {
/*width: 290px;*/
/*border: 1px solid silver;*/
/*font-weight: bold;*/
}
.option {
width: 330px;
display: inline-block;
}
.option-paramscol {
width: 140px;
display: inline-block;
text-align: left;
font-weight: bold;
padding-right: 20px;
}
.option-paramsval {
width: 190px;
display: inline-block;
}
.optiontable .paramscol {
width: 150px;
/*border: 1px solid silver;*/
text-align: left;
font-weight: bold;
padding-right: 20px;
}
.optiontable .valuecol {
width: 190px;
/*border: 1px solid silver;*/
}
.photoblock div.img {
/*float: left;
width: 160px;
border: 1px solid silver;*/
}
.imgsmall {
display: inline-block;
width: 160px;
/*border: 1px solid silver;*/
max-height: 100px;
overflow: hidden;
/*padding: 5px;*/
}
.imgbig {
width: 320px;
/*border: 1px solid silver;*/
max-height: 300px;
overflow: hidden;
/*padding: 5px;*/
}
</style>
{/literal}
{assign var=this_item_key_mode value='hide'}
{if $smarty.session.Accessor.mode=='free'}
{assign var=this_item_key_mode value='open'}
{elseif $smarty.session.Accessor.key!=''}
{if $smarty.session.Accessor.is_key_ranged==1}
{if in_array($data_shared.id.value, $smarty.session.Accessor.items)}
{assign var=this_item_key_mode value='open'}
{/if}
{elseif $smarty.session.Accessor.mode=='opened'}
{assign var=this_item_key_mode value='open'}
{elseif $smarty.session.Accessor.mode=='semiopened'}
{if in_array($data_shared[$smarty.session.Accessor.limitedby].value, $smarty.session.Accessor[$smarty.session.Accessor.limitedby])}
{assign var=this_item_key_mode value='open'}
{/if}
{/if}
{else}
{assign var=this_item_key_mode value='have_no_keys'}
{/if}
</head>
<body>
<table class="pg">
<tr>
<td><img src="{$_core_folder}/template/frontend/real-spaces/images/logo.png" width="276px" height="45px"></td>
<td style="text-align: right; font-weight: bold; font-size: 16px;">
{if $data.user_id.value==46}{$data_shared.fio.value}{else}{if $data_shared.fio.value != ''}{$data_shared.fio.value}{else}{$user_data.fio.value}{/if}{/if}<br>
{if $data.user_id.value==46 || $data.user_id.value==120}
{if $this_item_key_mode=='open'}
{if $data_shared.phone.value != ''}{$data_shared.phone.value}<br>{/if}
{else}
Контактные данные проверенных собственников скрыты. <a href="https://72realty.ru/access_select/" role="button" class="btn btn-danger btn-mini">Получить доступ</a><br>
{/if}
{else}
{if $data_shared.phone.value != ''}
{$data_shared.phone.value}<br>
{else}
{if $user_data.phone.value != ''} {$user_data.phone.value}<br>{/if}
{if $user_data.mobile.value != ''} {$user_data.mobile.value}<br>{/if}
{if $user_data.email.value != ''}
<a href="mailto:{$user_data.email.value}"> {$user_data.email.value}<br></a>
{/if}
{/if}
{/if}
WEB: <a href="https://72realty.ru/">https://72realty.ru/</a>
</td>
</tr>
</table>
<hr />
<table class="pg">
<tr>
<td style=" font-size: 18px;">
<b>ID:{$data.id.value}</b><br />
<span style="color:red">
{if $data.price_on_request.value==1}
<b>Цена по запросу</b>
{else}
<b>{$data.currency_id.value_string} {$data.price.value|number_format:0:'.':','}</b>
{/if}
</span>
</td>
<td style="text-align: right;">
</td>
</tr>
</table>
<table class="pg">
<tr>
<td{if $photo|count>0} colspan="2"{/if}><h1 class="title">{$title}</h1></td>
</tr>
<tr>
{if $photo|count>0}
<td class="photoblock" style="width: 340px;">
<div class="imgbig"><img src="{$_core_folder}/img/data/{$photo[0].normal}" style="width: 320px;" /></div>
</td>
<td style="width: 340px;">
<table class="optiontable">
{foreach from=$hvd_tabbed item=tab key=tabname}
{if $tab|count>0}
{foreach from=$tab item=data_item}
{if $data_item.type eq "primary_key" or $data_item.value eq "0" or $data_item.value eq "" or $data_item.name eq "currency_id" or $data_item.name eq "export_cian" or $data_item.name eq "user_id" or $data_item.name eq "price" or $data_item.name eq "youtube" or $data_item.type eq "hidden" or $data_item.name eq "text" or $data_item.type eq "geodata" or $data_item.name eq "meta_keywords" or $data_item.name eq "meta_description" or $data_item.name eq "meta_title" or $data_item.type eq "uploads"}
{elseif $data_item.name eq "owner_fio" or $data_item.name eq "owner_phone" or $data_item.name eq "private_text" or $data_item.name eq "uniq_id" or $data_item.name eq "address"}
{elseif $data_item.name eq "fio"}
{assign var="agent_fio" value=$data_item.value}
{elseif $data_item.name eq "phone"}
{assign var="agent_phone" value=$data_item.value}
{elseif $data_item.name eq "email"}
{assign var="agent_email" value=$data_item.value}
{elseif $data_item.type eq "select_by_query"}
{if $data_item.value_string!=''}
<tr><td class="paramscol">{$data_item.title}</td><td>{$data_item.value_string}</td></tr>
{/if}
{elseif $data_item.type eq "select_box_structure"}
{if $data_item.value_string!=''}
<tr><td class="paramscol">{$data_item.title}</td><td>{$data_item.value_string}</td></tr>
{/if}
{elseif $data_item.type eq "checkbox"}
{if $data_item.name ne 'hot' and $data_item.name ne 'active'}
{if $data_item.value eq 1}
<tr><td class="paramscol">{$data_item.title}</td><td><input type="checkbox" checked="checked" disabled="disabled" /></td></tr>
{/if}
{/if}
{elseif $data_item.type eq "select_box"}
{if $data_item.value_string!=''}
<tr><td class="paramscol">{$data_item.title}</td><td>{$data_item.value_string}</td></tr>
{/if}
{elseif $data_item.type eq "tlocation"}
<tr><td class="paramscol">{$data_item.title}</td><td>{$data_item.tlocation_string}</td></tr>
{else}
{if $data_item.value!=''}
{if $data_item.name eq "text"}
<tr><td class="paramscol">{$data_item.title}</td><td>{$data_item.value|nl2br}</td></tr>
{else}
<tr><td class="paramscol">{$data_item.title}</td><td>{if is_array($data_item.value)}{$data_item.value|implode:','}{else}{$data_item.value}{/if}</td></tr>
{/if}
{/if}
{/if}
{/foreach}
{/if}
{/foreach}
</table>
</td>
{else}
<td style="width: 680px;">
{assign var=x value=array()}
{foreach from=$hvd_tabbed item=tab key=tabname}
{if $tab|count>0}
{foreach from=$tab item=data_item}
{if $data_item.type eq "primary_key" or $data_item.value eq "0" or $data_item.value eq "" or $data_item.name eq "currency_id" or $data_item.name eq "export_cian" or $data_item.name eq "user_id" or $data_item.name eq "price" or $data_item.name eq "youtube" or $data_item.type eq "hidden" or $data_item.name eq "text" or $data_item.type eq "geodata" or $data_item.name eq "meta_keywords" or $data_item.name eq "meta_description" or $data_item.name eq "meta_title" or $data_item.type eq "uploads"}
{elseif $data_item.name eq "fio"}
{assign var="agent_fio" value=$data_item.value}
{elseif $data_item.name eq "phone"}
{assign var="agent_phone" value=$data_item.value}
{elseif $data_item.name eq "email"}
{assign var="agent_email" value=$data_item.value}
{elseif $data_item.type eq "select_by_query"}
{if $data_item.value_string!=''}
{append var=x value=$data_item.title}
{append var=x value=$data_item.value_string}
{/if}
{elseif $data_item.type eq "select_box_structure"}
{if $data_item.value_string!=''}
{append var=x value=$data_item.title}
{append var=x value=$data_item.value_string}
{/if}
{elseif $data_item.type eq "checkbox"}
{if $data_item.name ne 'hot' and $data_item.name ne 'active'}
{if $data_item.value eq 1}
{append var=x value=$data_item.title}
{append var=x value='<input type="checkbox" checked="checked" disabled="disabled" />'}
{/if}
{/if}
{elseif $data_item.type eq "select_box"}
{if $data_item.value_string!=''}
{append var=x value=$data_item.title}
{append var=x value=$data_item.value_string}
{/if}
{elseif $data_item.type eq "tlocation"}
{append var=x value=$data_item.title}
{append var=x value=$data_item.tlocation_string}
{else}
{if $data_item.value!=''}
{if $data_item.name eq "text"}
{append var=x value=$data_item.title}
{append var=x value=$data_item.value|nl2br}
{else}
{append var=x value=$data_item.title}
{if is_array($data_item.value)}
{append var=x value=$data_item.value|implode:','}
{else}
{append var=x value=$data_item.value}
{/if}
{/if}
{/if}
{/if}
{/foreach}
{/if}
{/foreach}
{assign var=cnt value=($x|count-1)}
{assign var=i value=0}
<table class="optiontable">
{while $i <= $cnt}
{if isset($x[$i])}
<tr>
<td class="paramscol">{$x[$i]}</td><td class="valuecol">{$x[$i+1]}</td>
{if isset($x[$i+2])}
<td class="paramscol">{$x[$i+2]}</td><td class="valuecol">{$x[$i+3]}</td>
{else}
<td class="paramscol"></td>
{/if}
</tr>
{/if}
{assign var=i value=$i+4}
{/while}
</table>
</td>
{/if}
</tr>
</table>
<table class="pg">
{if $data.text.value ne ''}
<tr>
<td>{$data.text.value}</td>
</tr>
{/if}
</table>
{if $data.geo.value.lat!='' && $data.geo.value.lng!=''}
<table class="pg" border="0" cellpadding="0" cellspacing="0">
<tr style="text-align: center;">
<td><img src="https://static-maps.yandex.ru/1.x/?ll={$data.geo.value.lng},{$data.geo.value.lat}&size=600,350&z=14&l=map&pt={$data.geo.value.lng},{$data.geo.value.lat},round"></td>
</tr>
</table>
{/if}
</body></html>
-