dmpress
Участники-
Публикации
85 -
Зарегистрирован
-
Посещение
-
Days Won
6
dmpress last won the day on February 14 2020
dmpress had the most liked content!
О dmpress
-
Звание
Профи
Посетители профиля
1154 просмотра профиля
-
Ок. Хочу заказать у вас платные доработки. Добавлю тогда этот момент.
-
ничего не изменилось если подстановочный алиас realty - в письме ссылка с адресом /realty123 - при переходе по ней открывается страница с адресом /realty123 если ставлю свой подстановочный алиас rest - в письме ссылка с адресом /realty123 при переходе - открывается страница ошибки 404 еще изменил в этой функции везде realty на rest - тоже не заработало))
-
или вы про это сообщение?))
-
я вот про это - редирект не идет Вы про это? здесь имеется в виду свой алиас - "подстановочная часть стандартного алиаса объявления"?
-
Дмитрий, я же об этом и пишу. Я изменил свой подстановочный алиас на стандартный. Но всё работает не совсем корректно - письмо приходит как и раньше со ссылкой вида /realty123, ссылка нормально открывается (если подстановочный алиас нестандартный - то ссылка не открывается), но она открывается по адресу /realty123 вместо адреса, который формируется на сайте в соответствии с заданными условиями расширенных алиасов, т.е. переадресация с адреса /realty123 на правильный адрес не происходит - а значит это дубль нормальной страницы и он будет проиндексирован при включенном обходе по метрике. Мы как будто говорим на разных языках)) Давайте ещё раз. Я установил следующие правила в настройках, чтобы было понятно заскринил всю страницу. При этих правилах по ссылке из письма "Заявка на объект" переход происходит на дубль объекта с адресом /realty123 Как сделать так, чтобы переход происходил на нормальную страницу объекта? Попробуйте на демо - там тоже самое.
-
попробовал и так и там ещё есть чуть ниже if (1 == $this->getConfigValue('apps.seo.level_enable') && preg_match('/^realty/', $requesturi)) тоже поставил свой алиас, но не сработало - и так и так подставляется realty и страница открывается с ошибкой но я не понимаю почему мы меняем realty на мой алиас? ведь когда прописываю realty - письмо корректно открывается по адресу site.ru/realty-77 (для примера), меня не устраивает что это дубль существующей страницы и редирект на существующую не происходит, как написано выше здесь вот мой полный исходный файл main main.php
-
у меня вот так, шаблон Новосёл function isRealtyDetected($requesturi) { $result = false; $unknown_address = false; $realty_id = false; if (!$result && 1 == $this->getConfigValue('apps.seo.data_alias_enable')) { $url_string_parts = explode('/', $requesturi); if (count($url_string_parts) > 0) { $possible_alias = $url_string_parts[count($url_string_parts) - 1]; $possible_alias = preg_replace('/[^A-Za-z0-9_-]/', '', urldecode($possible_alias)); if ($possible_alias != '') { $DBC = DBC::getInstance(); $query = "SELECT id FROM " . DB_PREFIX . "_data WHERE translit_alias=? LIMIT 1"; $stmt = $DBC->query($query, array($possible_alias)); if ($stmt) { $ar = $DBC->fetch($stmt); if ((int) $ar['id'] > 0) { $realty_id = (int) $ar['id']; $this->growCounter('data', 'id', $realty_id, $this->getSessionUserId()); require_once(SITEBILL_DOCUMENT_ROOT . '/apps/system/lib/frontend/view/kvartira_view.php'); $kvartira_view = new Kvartira_View(); if ($html = $kvartira_view->main($realty_id)) { $this->template->assert('main', $html); $result = true; } } } } } } if (!$result && preg_match('/realty/', $requesturi)) { if (1 == $this->getConfigValue('apps.seo.level_enable') && preg_match('/^realty/', $requesturi)) { $realty_id = $this->getIDfromURI($requesturi); if ($realty_id) { $query = 'SELECT topic_id FROM ' . DB_PREFIX . '_data WHERE id=?'; $DBC = DBC::getInstance(); $stmt = $DBC->query($query, array($realty_id)); if ($stmt) { $ar = $DBC->fetch($stmt); $topic_id = $ar['topic_id']; } require_once(SITEBILL_DOCUMENT_ROOT . '/apps/system/lib/admin/structure/structure_manager.php'); $Structure_Manager = new Structure_Manager(); $category_structure = $Structure_Manager->loadCategoryStructure(); if ($category_structure['catalog'][$topic_id]['url'] != '') { $parent_category_url = $category_structure['catalog'][$topic_id]['url'] . '/'; } else { $parent_category_url = ''; } if (1 == $this->getConfigValue('apps.seo.html_prefix_enable')) { $new_location = SITEBILL_MAIN_URL . '/' . $parent_category_url . 'realty' . $realty_id . '.html'; } else { $new_location = SITEBILL_MAIN_URL . '/' . $parent_category_url . 'realty' . $realty_id; } header('HTTP/1.1 301 Moved Permanently'); header('Location: ' . $new_location); exit(); } } elseif (1 == $this->getConfigValue('apps.seo.level_enable') && !preg_match('/^realty/', $requesturi)) { $realty_id = $this->getIDfromURI($requesturi); require_once(SITEBILL_DOCUMENT_ROOT . '/apps/system/lib/frontend/view/kvartira_view.php'); $kvartira_view = new Kvartira_View(); $html = $kvartira_view->main($realty_id); if ($html) { $this->growCounter('data', 'id', $realty_id, $this->getSessionUserId()); $this->template->assert('main', $html); $result = true; } } elseif (0 == $this->getConfigValue('apps.seo.level_enable') && preg_match('/^realty/', $requesturi)) { $realty_id = $this->getIDfromURI($_SERVER['REQUEST_URI']); require_once(SITEBILL_DOCUMENT_ROOT . '/apps/system/lib/frontend/view/kvartira_view.php'); $kvartira_view = new Kvartira_View(); $html = $kvartira_view->main($realty_id); if ($html) { $this->growCounter('data', 'id', $realty_id, $this->getSessionUserId()); $this->template->assert('main', $html); $result = true; } } } return $result; }
-
вернул - заработало, но редирект с этих адресов не идёт, открываются страницы с этими урл /realty123 что не есть хорошо, особенно с учетом того, что стоит обход по метрике... будут дубли... как сделать чтобы редирект работал?
-
Не совсем понял ответ У меня эта опция также изменена и не равна realty. Но причем здесь это? Это значение у меня всё равно нигде не подставляется. Везде формируются урл по заданному выше правилу. Для seo очень плохо если объявление будет доступно по разным url - это дубли страниц, зачем их плодить? Поэтому если есть возможность менять урл, должна быть возможность вставлять в письмо текущий url объявления. Как его можно подставлять из базы данных? Какой оператор использовать в шаблоне письма? Я так понимаю надо где-то сформировать новый realty_href_new и подставить его потом сюда Как это реализовать?
-
скрин во вложении только, пожалуйста, разместите здесь что и где нужно будет изменить в системе уже столько изменений вручную, что обновлять уже невозможно
-
там есть такая строка а причем здесь правила? проблема в этом getRealtyHref($realty_id) он почему-то возвращает левый урл попробуйте у себя на демо версии - задайте правила и сделайте заявку на объект (доп. поля) сейчас еще проверил раздел Сообщения у аккаунта, который подал объявление - там ссылка на объявление в сообщениях тоже неправильная
-
dmpress подписался на Шаблоны писем редактирование
-
Напишите, пожалуйста, расшифровку кодов, которые можно вставлять в шаблоны писем. Или хотя бы ответ на следующий вопрос. Сейчас в шаблоне письма "Заявка на объект" для вывода адреса объявления используется следующий код <a href="http://{$server_name}{$estate_folder}{$realty_href}"> При этом если разрешена установка нестандартных алиасов и прописаны поля для их формирования, в этом письме-заявке, которое отправляется из карточки объявления, выводится неверная ссылка на объявление. Выводится url со словом realty (нигде не используется, было в шаблоне по умолчанию) вместо текущего сформированного url в соответствии с настройками. Как изменить строку кода в шаблоне чтобы выводился реальный адрес объявления?