Лина

Участники
  • Публикации

    118
  • Зарегистрирован

  • Посещение

  • Days Won

    3

Изменения репутации

  1. Like
    Лина получил репутацию от MaxTu в Отдаем даром форму краткой Заявки на объекты   
    Благодарю вас за разработку и возможность ее использовать! За ваши золотые ручки
  2. Like
    Лина изменил репутацию abushyk в Предложения для будущих версий.   
    ИМХО, оценивая смысловой контент сегодняшних соцсетей, вряд ли это будет шок контентом на общем фоне))
     
    ПС. Соцсети УЖЕ стали помойкой. Улучшений не будет. Так что не вижу особого смысла не вкинуть туда еще и свою рекламу.
  3. Like
    Лина изменил репутацию abushyk в Предложения для будущих версий.   
    Это уже второй запрос на подобную опцию. Видать придется делать)
  4. Like
    Лина изменил репутацию TopRaN в Шаблон Realia   
    Надо уточнять у Дмитрия. Возможно так и задумано. Возможно нет. Биллинг не смотрел, руки не доходили .  Скорее всего выделение цветом только у випа, остальные наверное просто подымают объявление в таблице . 
  5. Like
    Лина изменил репутацию MaxTu в Хорошая, годная CMS   
    Добрый день!
    Сразу же хочется поблагодарить разработчиков CMS Sitebill за столь гибкую и хорошую CMS для агентств недвижимости, а также за адекватную, полезную помощь и поддержку!

    У нашей студии большой опыт работы с проектами для недвижимости, и даже есть собственная CMS заточенная под эту область, но Sitebill в последнем проекте показал свои сильные стороны.

    Хочется рассказать о нашем новом проекте - сайте агентства недвижимости "Академия м2" http://www.akademiyametrov.ru, и особенно о тех модулях и нововведениях, которые мы использовали для Sitebill при работе над ним, потому как считаем, что они будут полезны всему сообществу:



    ------------------------------------------



    0. Сайт сверстан на Twitter Bootstrap 3. Пока мы не видели новых проектов на Sitebill с этим css-фреймворком. Верстка велась на основе шаблона agency.
    В целом, подключение CSS и JS Bootstrap 3 не вызвало больших проблем.

    1. Написали свой модуль краткой Заявки в свободной форме!
    По-умолчанию, в CMS сделана большая, громоздкая форма заявки на аренду и покупку недвижимости. Мы же, по своему опыту знаем, что форма должна иметь как можно меньше полей
    для заполнения посетителем - конверсия выше будет.
    Модуль сделан в виде одного php-скрипта (дочитайте до конца и узнаете как его получить!). Данные отправляются на почту и появляются у админа в разделе "Заявки на аренду".
    Поэтому была написана форма всего с 4 полями, которая выводится в модальном окне bootstrap 3. Отправка данных сделана через ajax в наш скрипт simple-order.php.
    А в скрипте просто заносится данные в таблицу:

    $query="INSERT INTO re_data_get_rentSET name='".$name."', phone='".$phone."', more='".$message." (".NOW.")', date_added='".TIMESTAMP."'"; 2. Слайдер. Слайдер - это краеугольный камень презентационных сайтов, к коим относятся и сайты по недвижимости.
    Слайдер на главной странице сделан на основе верстки модуля/шаблона right_special.tpl и подключен к js-библитеке Sly slider.
    Доработки:
    - корректная обрезка описания объекта, с помощью функции шаблонизатора Smarty - truncate:200

    \template\frontend\akademiyametrov\right_special.tpl:14

    <p>{$special_items2[i].text|strip_tags|truncate:200}</p> - Вывод нескольких фото в слайдер (по-умолчанию, в CMS выводится одно фото) - подсказали в теме http://www.etown.ru/s/topic/357-превью-в-модуле-спецпредложений/:

    Файл /apps/system/lib/frontend/grid/grid_constructor.php:838:1551:2251
    $image_array = $data_model->get_image_array ( 'data', 'data', 'id', $item_array['id'], 1 ); тут убираем последний аргумент, который и указывает на количество фото
    $image_array = $data_model->get_image_array ( 'data', 'data', 'id', $item_array['id']); 3. Существенно переработана форма поиска: оставлены только необходимые поля. Плюс, сделано так, чтобы по-умолчанию был выбран необходимый город (с помощью jQuery):

    $('select#city_id :nth-child(2)').attr("selected", "selected"); Для стилизации полей формы использовали jquery.formstyler.min.js (по-моему, его можно включить в дефолтные шаблоны CMS).


    4. Таблица объектов также существенно переработана:
    - выводится три фото (вместо одного):
     
    {if $grid_items[i].img[1] != '' } <a class="preview" href="{$grid_items[i].href}"><img src="{$estate_folder}/img/data/{$grid_items[i].img[1].preview}" width="50"></a> {/if}{if $grid_items[i].img[2] != '' } <a class="preview" href="{$grid_items[i].href}"><img src="{$estate_folder}/img/data/{$grid_items[i].img[2].preview}" width="50"></a> {/if} - если указана сортировка по какому-то столбцу (стоимость, район и др.), он выделяется серым цветом css-класса cell-1:
     
    class="{if strpos($smarty.server.REQUEST_URI, "order=type") == true}cell-1{/if} - проставлены относительные даты добавления объекта вместо абсолютных ("сегодня", "вчера" вместо дефолтных "11.12"). Использована функция Smarty
    $smarty.now|date_format:"%d.%m" :
     
    {if $grid_items[i].date==$smarty.now|date_format:"%d.%m"} сегодня{elseif $grid_items[i].date==($smarty.now-(60*60*24))|date_format:"%d.%m"} вчера{else} {$grid_items[i].date}{/if} - благодаря новым классам в Bootstrap 3 некоторые столбцы на мобильных устройствах скрываются и таблица становится компактной и помещается на экранах вплоть до планшетов:
     
    <td ... class="visible-lg">...</td> 5. Существенно переработана страница объекта - к примеру, вот продажа 1-к квартиры.

    - Фото выводятся с помощью библиотеки photosetGrid , которая в виде мозаики размещает их.
    - Форма отправки заявки на объект также сделана по-другому: некрасивое всплывающее окно с большим количеством полей мало кто будет заполнять, поэтому форма
    выводится тут же на странице и выглядит как два поля - "Имя" и "Телефон". И все! Отправка данных из нее реализована через ajax.
    Для этого пришлось скопировать дефолтный шаблон form.tpl в свой шаблон в папку \template\frontend\akademiyametrov\apps\mailbox\site\template\ , и таким образом, работать уже
    с собственным подключаемым шаблоном.

    Спасибо за подсказку в теме http://www.etown.ru/s/topic/331-отдельный-шаблон-новостей/


    6. Главную страницу тоже существенно переверстали.
    К примеру, на основе функций Smarty сделали так, чтобы кое-какие блоки верстки выводились только на главной странице (в примере ниже - это слайдер, который выводится только на главной):

    {if $smarty.server.REQUEST_URI|regex_replace:"/\?(.*)/":"" eq '/'} <!-- Slider --> ... <!-- /.Slider -->{/if} или не выводились в определенных разделах (тут блок поиска не выводится на стат.страницах):
     
    {if $smarty.server.REQUEST_URI|regex_replace:"/\?(.*)/":"" ne '/services/' && $smarty.server.REQUEST_URI|regex_replace:"/\?(.*)/":"" ne '/aboutakademiyametrov/' && $smarty.server.REQUEST_URI|regex_replace:"/\?(.*)/":"" ne '/contacts/' && $smarty.server.REQUEST_URI|regex_replace:"/\?(.*)/":"" ne '/news/' && $smarty.server.REQUEST_URI|regex_replace:"/\?(.*)/":"" ne '/rostovhistory/' && $smarty.server.REQUEST_URI|regex_replace:"/\?(.*)/":"" ne '/order/'} <h2 class="topic"> Каталог недвижимости</h2>{/if} 7. Для бекэнда тоже постарались: написали свой модуль для автоматического экспорта объектов на доску объявлений "Авито" - http://www.akademiyametrov.ru/xml/avito.xml,
    чем с удовольствием пользуется клиент, а также модуль автоматического парсинга определенных сайтов и добавления квартир с них в админку.
    Но, на текущий момент, первый модуль оформлен как кнопка со ссылкой на URL (по которому генерируется xml) в разделе "Выгрузка Яндекс.Недвижимость" и представляет собой один php-скрипт,
    т.к. до написания полноценного плагина для CMS руки не дошли. Вполне вероятно, что при работе над другими проектами оформим их как плагины.


    В итоге 1-месячной работы имеем:
    2 новых собственных шаблона модулей (news, mailbox - все они копировались из дефолтных в папку \template\frontend\akademiyametrov\apps\ ,
    к примеру собственный шаблон новостей для работы должен иметь путь \template\frontend\akademiyametrov\apps\news\site\template\), 8 переверстанных
    шаблонов (header.tpl, footer.tpl, main.tpl, right_special.tpl, standart_search_form.tpl, realty_view.tpl, realty_grid.tpl, news_list_column.tpl), 4-6 файлов собственных
    модулей ... и ~10 вопросов на форуме


    Готовы поделиться скриптом для формы свободной заявки (1 php-скрипт + js-код для отправки данных + код под bootstrap для верстки модальн.окна). Пишите в личку.

    При разработке даже сделали небольшой хак - "Установка шаблона из URL 'на лету' " http://www.etown.ru/s/topic/332-хак-установка-шаблона-из-url-на-лету/
    И в конце работы над проектом, хочется высказать пожелания для разработчиков, быстрее включить в дефолтные шаблоны Bootstrap 3.


    -----------------
    Отдаем даром форму краткой Заявки на объекты

    В ходе работы над последним проектом на основе Sitebill, мы сделали краткую форму Заявки на объект. Знаем по собственному опыту работы с сайтами агентств недвижимости - такая форма с 2-4 полями дает существенную конверсию и отдачу.
    Форма добавляет заявку в админку и отправляет заявку на email.

    Готовы поделиться скриптом для формы свободной заявки (1 php-скрипт + js-код для отправки данных + код под bootstrap для верстки модальн.окна).
     
    Просто напишите в личку.


  6. Like
    Лина изменил репутацию abushyk в Шаблон Realia   
    Добавляем Добавить в Избранное в шаблон Realia
     
    1. Добавляем разметку для "кнопок".
    Файл /template/frontend/realia/realty_grid_thumbs.tpl и /template/frontend/realia/realty_grid_list.tpl
    В блок с классом title
    <div class="title"> <h2> <a href="{$grid_items[i].href}">...</a> </h2></div> , он одинаков для обеих файлов, после начала h2, но перед началом a внедряем кусок разметки
    <div class="title"> <h2><!-- Начало вставляемого куска --> {if isset($smarty.session.favorites)}            {if in_array($grid_items[i].id,$smarty.session.favorites)}        <a class="fav-rem" alt="{$grid_items[i].id}" title="{$L_DELETEFROMFAVORITES}" href="#remove_from_favorites"></a>        {else}        <a class="fav-add" alt="{$grid_items[i].id}" title="{$L_ADDTOFAVORITES}" href="#add_to_favorites"></a>        {/if} {else} <a class="fav-add" alt="{$grid_items[i].id}" title="{$L_ADDTOFAVORITES}" href="#add_to_favorites"></a>        {/if}<!-- Конец вставляемого куска --> <a href="{$grid_items[i].href}">...</a> </h2></div> 2. Картинки для кнопок качаем архивом отсюда http://my.digitalwerkstatt.ru/files/stars.zip и выкладываем в папку /template/frontend/realia/img
     
    3. Теперь необходимо добавить ссылку на Избранное. Добавить ее можно в любое место на странице, но оптимально, что бы она была доступна из любой страницы сайта. Поэтому я добавлю ее в меню на самом верху сайта
     

     
    Для этого открываем /template/frontend/realia/main.tpl находим в нем блок где выводятся данные из набора меню right_menu
    {section name=i loop=$right_menu} <li><a href="{$right_menu[i].url}">{$right_menu[i].name}</a></li>{/section} И сразу после него добавляем свой пунктик
    <li><a href="{$estate_filder}/myfavorites/">Избранное (<span id="favorites_count">{(int)$smarty.session.favorites|count}</span>)</a></li> 4. Стили. Добавляем их в /template/frontend/realia/css/realia-blue.css в конец следующим куском
    .fav-add {background-image: url('../img/starg.png');display: inline-block;width: 24px;height: 24px;background-position: 50% 50%;background-repeat: no-repeat;}.fav-add:hover {background-image: url('../img/starg_h.png');}.fav-rem {background-image: url('../img/star.png');display: inline-block;width: 24px;height: 24px;background-position: 50% 50%;background-repeat: no-repeat;}.fav-rem:hover {background-image: url('../img/star_h.png');} 5. Интерактивность. Добавим обработку событий по клику на кнопках.
    Файл /template/frontend/realia/js/interface.js
     
    Находим строку 
    $('#prettyLogin .tab-content').css({'max-height': (0.55*wh)+'px'});  и после нее добавляем наши обработчики в виде кода отсюда http://pastebin.com/ZWvFTDDM
     
  7. Like
    Лина изменил репутацию Дмитрий Кондин в Платный модуль Биллинга   
    Шаблон realia у нас выпущен недавно и функции биллинга для этого шаблона еще не интегрированы.
    Они есть в realty, agency.
    В ближайшее время добавим туда функции биллинга и сделаем обновление, сможете скачать шаблон с этими функциями.
  8. Like
    Лина изменил репутацию IGOR в Шаблон Realia   
    Избранное сделаем ? Может как-то так...


  9. Like
    Лина изменил репутацию Konstantin Nikolaevich в Правильный robots.txt   
    User-Agent: *
    Disallow: /admin
    Disallow: /cache
    Disallow: /cgi-bin
    Disallow: /apps
    Disallow: /css
    Disallow: /inc
    Disallow: /install
    Disallow: /js
    Disallow: /template
    Disallow: /third
    Disallow: /remind/
    Disallow: /getrent/
    Disallow: /contactus/
    Disallow: /add/
    Disallow: /mailbox/
    Disallow: /ipotekaorder/
    Host: сайт.ru
    Sitemap: сайт.ru/sitemap.xml
     
    Верно ли?
  10. Like
    Лина изменил репутацию Дмитрий Кондин в Справочник районов, метро, улиц Москвы (таблица mysql) + города МО   
    Примерно так:

    Если же нужны свои формы поиска то так:

  11. Like
    Лина изменил репутацию Дмитрий Кондин в Магазин контактов собственников   
    Если собственники и риэлторы будут в разных группах, то можно реализовать алгоритм такой. Чтобы продавались только контакты собственников.
  12. Like
    Лина изменил репутацию abushyk в Избранные объявления   
    Точно. Как-то этот момент оказался упущенным.
  13. Like
    Лина изменил репутацию abushyk в Не отображается title в браузере сайта   
    Проверьте /template/frontend/agency/header.tpl
     
    Вот такие строки должны быть для вывода мета-информации.
    <title>{if $meta_title != ''}{$meta_title}{else}{$title}{/if}</title><meta name="description" content="{$meta_description}" /> <meta name="keywords" content="{$meta_keywords}" /> 
  14. Like
    Лина изменил репутацию abushyk в А зачем модуль комментарии?   
    Для того, что бы отображался блок "комментарии" в realty_view.tpl определите место, где бы вы хотели его видеть, и вставьте метку для его вывода
     
    {if $apps_comment_on==1}{include file=$app_comment_panel}{/if}