-
Публикации
6535 -
Зарегистрирован
-
Посещение
-
Days Won
362
Все публикации пользователя Дмитрий Кондин
-
Теперь пользователи CMS Sitebill могут внутри сделок Битрикс24 составлять подборки из объектов недвижимости. 1. Сначала создаем сайт недвижимости, если его еще нет https://www.sitebill.ru/arenda-cms-dlya-rieltorov 2. Устанавливаем приложение Sitebill-недвижимость в Битрикс24 3. Авторизуемся в сделках 4. Начинаем формировать подборки объектов недвижимости.
-
Спец и вип это одно и тоже, просто мы их назвали по разному. Нужно добавить новый признак (checkbox в редакторе форм) и по нему фильтровать в новой функции.
-
Старые никак не получится распределить.
-
Словами опишите какое правило вывода нужно?
-
Кэшировать я думаю стоит только статичный контент, а php выдачу не нужно кэшировать ни для авторизованных, ни для анонимов.
-
Смотрите footer.tpl <div class="content"> {foreach from=$new_grid_items item=new_grid_item} <div class="property"> <div class="image"> <a href="{$new_grid_item.href}"></a> {if $new_grid_item.img != '' } <img src="{$estate_folder}/img/data/{$new_grid_item.img[0].preview}" class="previewi"> {else} <img src="{$estate_folder}/template/frontend/realia/img/no_foto_100x74.png" class="previewi"> {/if} </div><!-- /.image --> <div class="wrapper"> <div class="title"> <h3> <a href="{$new_grid_item.href}"> {if $new_grid_item.city ne ''} {$new_grid_item.city}{if $new_grid_item.street ne ''}, {$new_grid_item.street}{if $new_grid_item.number ne ''}, {$new_grid_item.number}{/if}{/if} {else} {if $new_grid_item.street ne ''} {$new_grid_item.street}{if $new_grid_item.number ne ''}, {$new_grid_item.number}{/if} {/if} {/if} </a> </h3> </div><!-- /.title --> <div class="location">{$new_grid_item.path}</div><!-- /.location --> {if $new_grid_item.price_discount > 0} <div class="price"> {$new_grid_item.price_discount|number_format:0:",":" "} {if $new_grid_item.currency_name != ''}{$new_grid_item.currency_name}{/if} <div class="price_discount_footer">{$new_grid_item.price|number_format:0:",":" "} {if $new_grid_item.currency_name != ''}{$new_grid_item.currency_name}{/if}</div> <!-- /.price --> </div> {else} <div class="price">{$new_grid_item.price|number_format:0:",":" "} {if $new_grid_item.currency_name != ''}{$new_grid_item.currency_name}{/if}</div> {/if} </div><!-- /.wrapper --> </div> <!-- /.property --> {/foreach} </div><!-- /.content --> Копируете этот код куда вам нужно в шаблоне и нужно только заменить $new_grid_items на $new_grid_items_my Параметры смотрите в методе private function getNewestMy()
-
В /template/frontend/realia/main/main.php Вы можете задублировать метод private function getNewest() { require_once SITEBILL_DOCUMENT_ROOT . '/apps/system/lib/frontend/grid/grid_constructor.php'; $grid_constructor = new Grid_Constructor(); $params['order'] = 'date_added'; $params['asc'] = 'desc'; $params['page_limit'] = 3; $params['page'] = 1; $res = $grid_constructor->get_sitebill_adv_ext($params, false, false); //echo count($res); //print_r($res); $this->template->assign('new_grid_items', $res); } Задать ему новое имя и изменить метку new_grid_items_my private function getNewestMy() { require_once SITEBILL_DOCUMENT_ROOT . '/apps/system/lib/frontend/grid/grid_constructor.php'; $grid_constructor = new Grid_Constructor(); $params['order'] = 'date_added'; $params['asc'] = 'desc'; $params['page_limit'] = 3; $params['page'] = 1; $res = $grid_constructor->get_sitebill_adv_ext($params, false, false); //echo count($res); //print_r($res); $this->template->assign('new_grid_items_my', $res); } Потом в методе main() вызваем наш дубль $this->getNewest(); $this->getNewestMy(); В итоге в шаблоне у нас будет доступен новый массив new_grid_items_my и мы можем его выводить где-то отдельно от остальных.
-
Теперь можно добавлять записи в CMS Sitebill с помощью внешних систем. https://github.com/rumantic/sitebill_api_php_sdk
-
Настроили вам в старом модуле.
-
У вас старая версия модуля ЦИАН, нужно новый поставить.
-
Отобразить больше объявлений на главной - Novosel
topic ответил в bigtown39 Дмитрий Кондин в Обновления
На главной в новоселе выводится определенное количество новых объектов. в /template/frontend/novosel/main/main.php private function getNewest(){ require_once SITEBILL_DOCUMENT_ROOT.'/apps/system/lib/frontend/grid/grid_constructor.php'; $grid_constructor = new Grid_Constructor(); $params['order'] = 'date_added'; $params['asc'] = 'desc'; $params['page_limit']=6; $params['page']=1; $res = $grid_constructor->get_sitebill_adv_ext( $params, false, false ); $this->template->assign('new_grid_items', $res); } Поправьте $params['page_limit']=6; -
Адрес сайта скажите, посмотрю что еще поправить.
-
А лучше так в шаблоне layyout_realtyview.tpl После этого кода {if isset($data.text) && $data.text.value != ''} <div> <h4>Описание:</h4> <p>{$data.text.value}</p> </div> {/if} Добавляем этот {if $data.youtube.value != ''} <div> <p><iframe width="560" height="315" src="//www.youtube.com/embed/{$data.youtube.value}" frameborder="0" allowfullscreen></iframe></p> </div> {/if}
-
В настройках - Выгрузка Яндекс.Недвижимость Тут Алиас приложения (apps.yandexrealty.alias) Пропииште вместо yandexrealty Это yandexrealty.xml
-
Делаю апдейт.
-
В новой админке есть просмотр комментариев http://estate.sitebill.ru/apps/admin/ Логин: admin Пароль: admin
-
В грид нет вывода комментариев.
-
Ошибка возникает при обращении к сприпту /apps/system/js/uploadify/uploadify.php Скорей всего, что-то с конфигурацией сервера поменялось. Нужно смотреть логи апача, там ошибки.
-
В шаблоне realty_grid.tpl Находим это <div id="map" style="margin: 10px 0;"> <iframe src="{$estate_folder}/js/ajax.php?action=iframe_map&{$QUERY_STRING}" style="border: 0px;" border="0" width="100%" height="100%"></iframe> </div> И меняем на это {if $REQUESTURIPATH != '' } <div id="map" style="margin: 10px 0;"> <iframe src="{$estate_folder}/js/ajax.php?action=iframe_map&{$QUERY_STRING}" style="border: 0px;" border="0" width="100%" height="100%"></iframe> </div> {/if}
-
Какой шаблон?
-
Решили это уже в обновлениях. Посмотрите тут \apps\system\lib\system\user\register_using_model.php Начиная со строчки 853 Есть такой код if (1 == $this->getConfigValue('use_registration_email_confirm')) { $DBC = DBC::getInstance(); $activation_code = md5(time() . '_' . rand(100, 999)); $query = 'UPDATE ' . DB_PREFIX . '_user SET pass=? WHERE user_id=?'; $stmt = $DBC->query($query, array($activation_code, $new_user_id)); $activation_link = '<a href="http://' . $_SERVER['HTTP_HOST'] . SITEBILL_MAIN_URL . '/register?do=activate&activation_code=' . $activation_code . '&email=' . $email . '">http://' . $_SERVER['HTTP_HOST'] . SITEBILL_MAIN_URL . '/register?do=activate&activation_code=' . $activation_code . '&email=' . $email . '</a>'; $tpl = SITEBILL_DOCUMENT_ROOT . '/template/frontend/' . $this->getConfigValue('theme') . '/apps/system/template/mails/user_registration_conf.tpl'; global $smarty; $smarty->assign('mail_activation_link', $this->getServerFullUrl() . '/register?do=activate&activation_code=' . $activation_code . '&email=' . $email); $smarty->assign('mail_server', $this->getServerFullUrl()); $smarty->assign('mail_current_language', Multilanguage::get_current_language()); if (file_exists($tpl)) { global $smarty; $smarty->assign('mail_login', $login); $smarty->assign('mail_password', $password); $smarty->assign('mail_activation_link', $this->getServerFullUrl() . '/register?do=activate&activation_code=' . $activation_code . '&email=' . $email); $smarty->assign('mail_server', $this->getServerFullUrl()); $smarty->assign('mail_current_language', Multilanguage::get_current_language()); $message = $smarty->fetch($tpl); } else { $message = sprintf(Multilanguage::_('NEW_REG_EMAILACCEPT_BODY', 'system'), $activation_link); } if (Multilanguage::is_set('LT_NEW_REG_EMAILACCEPT_TITLE', '_template')) { $subject = sprintf(Multilanguage::_('LT_NEW_REG_EMAILACCEPT_TITLE', '_template'), $_SERVER['HTTP_HOST']); } else { $subject = sprintf(Multilanguage::_('NEW_REG_EMAILACCEPT_TITLE', 'system'), $_SERVER['HTTP_HOST']); } $to = $email; $from = $this->getConfigValue('system_email'); $email_template_fetched = $this->fetch_email_template('registration_email_confirm'); if ($email_template_fetched) { $subject = $email_template_fetched['subject']; $message = $email_template_fetched['message']; $message_array['apps_name'] = 'register_using_model'; $message_array['method'] = __METHOD__; $message_array['message'] = "subject = $subject, message = $message"; $message_array['type'] = ''; //$this->writeLog($message_array); } $this->sendFirmMail($to, $from, $subject, $message); $query = 'DELETE FROM ' . DB_PREFIX . '_cache WHERE parameter=?'; $stmt = $DBC->query($query, array($activation_code)); $query = "insert into " . DB_PREFIX . "_cache (`parameter`, `value`) values (?, ?)"; $stmt = $DBC->query($query, array($activation_code, $password)); if (Multilanguage::is_set('LT_REGISTER_SUCCESS', '_template')) { $rs = '<h3>' . Multilanguage::_('LT_REGISTER_SUCCESS', '_template') . '</h3><br>'; } else { $rs = '<h3>' . Multilanguage::_('REGISTER_SUCCESS', 'system') . '</h3><br>'; } if ($form_data[$this->table_name]['active']['value'] != 1) { if (Multilanguage::is_set('LT_ACTIVATION_CODE_SENT', '_template')) { $rs .= Multilanguage::_('LT_ACTIVATION_CODE_SENT', '_template'); } else { $rs .= Multilanguage::_('ACTIVATION_CODE_SENT', 'system'); } } if ($json_mode) { return json_encode(array('result' => 1, 'subres' => 'email_confirm', 'msg' => $rs)); } return $rs; }