metrpro

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

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

  • Посещение

  • Days Won

    15

Все публикации пользователя metrpro

  1. Это я пробовал уже еще раньше. Результат аналогичен тому, что вылезают все улицы, в т.ч. те, где город не указан. UPDATE: Так, мы что-то не то ищем... Оказывается, для некоторого кол-ва улиц парсер прописал города (но тогда непонятно, почему не для всех). И дуром вываливаются эти улицы в соответствующий бокс даже тогда, когда город в нем не указан. Т.е., скажем, в форме поиска в городском боксе стоит "укажите город" или "ЯЛТА", а боксе улиц уже вывалены все 100% улиц (независимо от выбора в боксе города). Сейчас запрос стоИт следующий: select * from re_street where name is not null AND city_id>0 order by name Надобно - если город не указан, то и улицы никакие не подгружаются. Если выбран город, то отображаются ТОЛЬКО ЕГО улицы. Вот. Иначе, будет, как на скрине:
  2. shit, опять пропадает при редактировании... хотя в таблица поисковых форм подгружается теперь сразу. список улиц к городу smarty Но мы опять на месте.
  3. Так-то да, теперь при редактировании объявления улица не пропадает. Но и на странице редактирования объявления, и в любой поисковой форме, где можно указать улицу поиска, теперь опять вываливаются улицы с городами null. Т.е. мы вернулись на исходную. А я еще раз повторюсь, какая цель преследовалась изначально - улицы, у которых не определен город (Null), не должны фигурировать ни в одном списке, ни в одном боксе. Дима, прошу посмотреть ещё раз, повнимательнее. UPDATE: я попробовал в Редакторе форм/data/street_id/ поменять mysql-запрос на следующий: select * from re_street where name is not null AND city_id is not null order by name Результат не увидел, но смысл-то ведь какой-то такой должен быть, нет? Кстати, замена там же на запрос старого вида - select * from re_street where name null order by name - тоже на дает никаких изменений почему-то. Не там меняю?
  4. Любое. Например, вот страница улицы, добавленной вручную - все тамошние объявления рукотворные, улица рукотворная, привязана к городу Феодосия. И все они при редактировании теряют эту улицу - при этом номер дома остаётся, остаётся город и геокоординаты.
  5. Исчезает улица в объявлениях, созданных пользователями ВРУЧНУЮ, с улицами, добавленными ВРУЧНУЮ и ПРИВЯЗАННЫМИ к городу. Дима, не надо уходить от проблемы, надо её решать. Отписки ни к чему. Актуально, улицы все так же исчезают!
  6. Без проблем - их там всего порядка 4К. Пять минут работы. Меня волнует другое - не должна исчезать текущая улица при редактировании объявления!
  7. Пакетный импорт объявлений через парсер sitebill имеет следующую особенность - если улица в импортируемом объявлении уже имеется в базе адресов (проверяется ГОРОД+УЛИЦА), то указывается совершенно правильный id улицы. Но! Если улицы нет, то она добавляется в базу данных БЕЗ привязки к городу, даже если тот есть в базе данных и явно прописан в самом объявлении. Имеем, пример 1: город - "ЯЛТА", улица - "Садовая ул.", и то, и другое в базе уже есть, вновь созданное объявление будет иметь правильные id города и улицы. Пример 2: город - "ЯЛТА", улица - "Улица Садовая". Город есть, а улица, предположим, в базе отсутствует. Получаем новое объявление - указан id города Ялта, и id новой улицы. Новая улица тоже добавлена в базу данных, но она НЕ ПРИВЯЗАНА к городу Ялта, значение city_id этой улицы - null. Т.е. эта новая улица и существующий город связаны между собой лишь на уровне объявления, а не на уровне справочников. В результате у меня уже около 3,5К улиц, висящих в воздухе, непонятно из какого города. На каждой странице, где в форме поиска есть возможность выбора улицы, уже по факту загрузки страницы мы имеем автоматически вываленные улицы (где город null), что утяжеляло страницу на 700 Кб. Как же это решалось. Форма sql-запроса в редакторе форм была заменена на: select * from re_street where name null order by name Т.е. добавлялись в формы поиска только улицы, которые к городам привязаны. Но это породило проблему. Как только открываешь ранее созданное объявление с нормальной улицей (привязанной к городу) для редактирования, в боксе улиц - нет значения. Они не подгружаются туда на момент открытия страницы редактирования. Бокс города - правильный, с нужным городом, а бокс улиц - пустой. Меняем города на другой, а потом снова выставляем нужный (пусть будет ЯЛТА). Улицы подгружаются. Но та, что была указана изначально, не выделена. Пользователи редактируют свои объявления, и не замечают, что остаются без улиц. Очень важно, чтобы улица, ранее указанная в объявлении при его создании, никуда не девалась при редактировании! Для меня это тоже важно, потому что я открываю сейчас для индексации поисковиками grid'ы объявлений по городам+улицам (у меня теперь генерируются меты для этих связок вида "Улица ___, г. ___ - объявления.... [страница __]", обходя проблему дублей). Вот в этом вся проблема, источник которого лежит в том, что тестирование парсера никто полностью не проводил. Однако, проблему надо решить! Пользователи жалуются!!!
  8. UPD: Разобрался, выдергивается через массив $smarty.post.predefined_info В моём случае имеем {$smarty.post.predefined_info.socimage}
  9. Вопрос по predefindlinks. Через редактор форм к таблице predefindlinks добавлен параметр socimage - ссылка на картинку, которая будет использоваться в header как og:image при репосте грида из predefinedlinks. Вопрос - как в гриде, созданном через линк-менеджер, получить значение этого параметра во frontend?
  10. ) Спасибо, но вопрос решен выдергиванием страницы из meta_title через substr и strripos
  11. Вопрос к разработчикам - как получить на уровне фронтенда значение текущей страницы?
  12. Костя, еще момент, на страницу инфо о пользователе city_name передаётся, а на страницу userlist передаётся только значение city_id. Хотя формируется у меня выборка *: protected function rieltors(){ $users=array(); $DBC=DBC::getInstance(); $query='SELECT * FROM '.DB_PREFIX.'_user WHERE group_id=2 AND user_id<>2 AND user_id<>3 AND user_id<>6 AND user_id<>59 AND user_id<>144 AND user_id<>155 ORDER BY fio ASC'; $stmt=$DBC->query($query); if($stmt){while($ar=$DBC->fetch($stmt)){$users[]=$ar;}} $this->template->assert('users', $users); }
  13. Легко. Пошагово для realia: 1. В первую очередь определяем, что вообще используем schema.org типа product. Для этого в шаблоне realty_view.tpl находим блок, содержащий все, что между крошками и футером/спецпредложениями - это div класса row - и корректируем под нужную нам схему: <div class="row" itemscope itemtype="http://schema.org/Product"> 2. Определяем имя продукта - это то, что находится под заголовком стиля page-header (по умолчанию, правда, это почему-то заголовок второго уровня, рекомендую поменять его h1): <h1 class="page-header"><span itemprop="name"> ЗДЕСЬ ТО, ЧТО У ВАС ИДЕТ В КАЧЕСТВЕ ЗАГОЛОВКА ОБЪЯВЛЕНИЯ, СКОРЕЕ ВСЕГО {$title} </span></h1> 3. Т.к. мы этот продукт предлагаем, то значит это тип Offer - для этого всю таблицу с характеристиками помечаем нужным образом. Ищем соответствующий <div class="noverview-short"> и меняем его: <div class="noverview-short" itemprop="offers" itemscope itemtype="http://schema.org/Offer"> 4. Добавляем изображение - для этого ищем ниже заглавное изображение объявлений вида <img src="{$estate_folder}/img/data/{$photo[0].normal}" и добавляем к нему параметр itemprop="image": <img src="{$estate_folder}/img/data/{$photo[0].normal}" itemprop="image"> 5. Все объявления актуальны? Вставляйте в любом месте тег "На складе": <link itemprop="availability" href="http://schema.org/InStock"> 6. Не забываем про ценник - система его вывода достаточно неоднозначна и скорее всего, у Вас он формируется автоматически в процедурах вывода характеристик объекта, поэтому мы с ним в стили лезть не будем, а просто пропишем отдельно. Вариант, если у Вас только рубли: <meta itemprop="price" content="{$data_shared.price.value|number_format:0:".":""}"> <meta itemprop="priceCurrency" content="RUB"> Но у меня цены есть еще и в долларах, поэтому приходится проверять - если в рублях, то рубли, если в USD, то в USD: <meta itemprop="price" content="{$data_shared.price.value|number_format:0:".":""}"> {if $data_shared.currency_id.value == 2} <meta itemprop="priceCurrency" content="USD"> {else} <meta itemprop="priceCurrency" content="RUB"> {/if} 7. Описание товара - ищем {$data.text.value|nl2br} и обволакиваем нужными нам параметрами: <span itemprop="description">{$data.text.value|nl2br}</span> 8. В принципе, основная часть готова. Проверить то, что сделали, можете в валидаторах. Валидатор от Гугла - https://search.google.com/structured-data/testing-tool Валидатор от Яндекса - https://old.webmaster.yandex.ru/microtest.xml Рекомендую пользоваться и тем, и другим - причем в отличие от мобильной дружелюбности, здесь гугл гораздо строже. PS: модераторы, исправьте, пожалуйста, название этой темы - не хватает одной буквы в слове sChema.org
  14. Всем привет. Собственно, стоИт вопрос - нынешний плагин выгрузки ЯН позволяет установить период выгрузки объявлений в фид за последние ХХ дней. Есть необходимость изменить условие выгрузки с даты на количество - т.е. выгружать последние YY объявлений. Если кто сталкивался с этим, прошу поделиться решением.
  15. А, ну да, забыл. У меня еще вручную добавленный раздел есть - описание городов metrpro.ru/cities/ через перехватчик урл в main.php - там я применил схему place как раз, включая геокоординаты и пр.
  16. Сделав две недели назад схему для объявлений и авторов объявлений (АН и застройщиков), получил такую статистику загрузки этих данных гуглом: Как видно из данных, гоша неспешно подгружает эти данные - при общем количестве объявлений более 12К, пока с разметкой проиндексировано около 500 шт. В сниппете гугла теперь выводится цена, описание и метка "в наличии" (у нас же все объявления актуальны, воут?) Конечно, большая часть схематичных страниц попала в индекс через аддурилку. Но постепенно, думаю, войдут все. Влияние на ранжирование пока не заметил, сниппеты слега симпатичнее, но над ними еще можно поработать.
  17. Ну, Костя, ну красава! В очередной раз спасибо!
  18. Нет, Костя, не пашет. Возвращает пустое значение в любом случае - city_name, city_name.value, city_name.value_string
  19. Уже обсуждалось. Решается эта проблема после некоторых танцев с бубном.
  20. Решается легко. Достаточно добавить еще одну модальную форму - одна уже есть в системе, это авторизация
  21. Что за привычка лечить тут? Мы не wp тут обсуждаем, а платный движок. Научитесь с людьми нормально разговаривать.
  22. Дима, я советую подобные "разъяснения" сразу на главной странице сайтбила писать - вместо хвалебных отзывов. И напротив каждой функции тоже указывать - "когда нибудь в след версии сделаем". Такой маркетинг целевой. Чтобы всем сразу было понятно, что это очень сложная система, когда стОит кучу бабла. А то взялись тут, понимаешь, всякие, сидят, советы какие-то клянчат, людей от работы отвлекают. Подобные сообщения от админа почитаешь, и как-будто гавна поел, честное слово.
  23. Я начал разметку по это схеме - размечены данные авторов объявлений для групп агентств и застройщиков по типу organization. А в приведенном для футера примере не указан атрибут url, что приведет к ошибке в валидаторе гугла. И еще не помечен атрибут logo.
  24. Дима, вот почему так сложно готовое решение подсказать? Сейчас в запросе идёт: select * from re_city order by name Как надо это изменить?