Справка:Документация
ultracity.pro — вики-каталог коммерческой недвижимости Новосибирска на MediaWiki 1.45.1 с Semantic MediaWiki.
На этой странице собрана техническая и пользовательская документация: шаблоны, CSS, скрипты, виджеты, формы, что используется и что лежит в запасе.
Как устроен сайт
Сайт построен вокруг зданий (жилые дома, бизнес-центры, торговые центры) и объявлений коммерческой недвижимости. Страницы связаны через SMW-свойства и категории.
Три ключевых типа страниц:
- Страница здания — Фрунзе 5: фото, координаты 2GIS, поэтажные планы, арендаторы, свободные офисы.
- Страница объявления — 119340386: шаблоны Местоположение, Информация об объекте, Описание, Контактные данные, фото.
- Страница организации/офиса — Фрунзе 5 офис 541: шаблон здания + Офис + SMW.
| Страница | Назначение |
|---|---|
| Заглавная | Галерея БЦ/ТЦ ({{{Спец}}}), лента актуальных объявлений |
| Поиск | Фильтр по типу помещения, площади, цене (
)
|
| Коммерческая недвижимость | Полный список объявлений (SMW broadtable) |
| Типовая архитектура | SEO-хаб: стандарты разметки, примеры, справочник |
| Документация | Эта страница |
Система шаблонов
Основные (listing-table)
| Шаблон | Назначение | SMW-свойства |
|---|---|---|
| {{{Местоположение}}} | Адрес: город, улица, дом, район, ориентир | город, улица, номер дома, район, ориентир, архив=нет |
| {{{Информация об объекте}}} | Тип, площадь, этаж, цена и др. | тип здания, тип помещения, площадь, этаж, цена |
| {{{Описание}}} | Описание, дата публикации, ссылка N1 | описание, дата публикации, N1 |
| {{{Контактные данные}}} | Имя, телефон, организация, собственник | имя, организация, номер телефона, собственник |
| {{{Архив}}} | Красный баннер «ОБЪЯВЛЕНИЕ В АРХИВЕ» | архив=да, Категория:Архив |
Здания и объекты
| Шаблон | Назначение |
|---|---|
| {{{Жилой дом}}} | Карточка жилого дома |
| {{{Подъезды}}} | Разметка квартир по подъездам |
| {{{Офис}}} | Карточка офиса. SMW: адрес, этаж, площадь, офис свободен, арендная ставка/плата |
| {{{Блок}}} | Карточка блока/помещения в ТЦ |
| {{{Организации}}} | SMW-запрос организаций по адресу: [[Категория:Организации]] [[адрес::{{FULLPAGENAME}}]]. Требует SMW-свойства на страницах организаций.
(аналог Офиса). SMW: адрес, этаж, площадь, блок свободен, арендная ставка/плата |
| {{{Фото}}} | Блок фото для жилых домов и объектов |
| {{{Фото объявления}}} | Блок фото для страниц объявлений |
| {{{Информация об объекте аренда}}} | Характеристики аренды |
| {{{Аренда}}} | Фильтр архив=нет |
| {{{Коммерция}}} | SMW-запрос объявлений по адресу здания |
| {{{Спец}}} | Галерея БЦ (24) и ТЦ (7) на заглавной |
| {{{Научные организации}}}, {{{Франшиза}}}, {{{О франшизе}}} | Специализированные карточки |
Технические
| Шаблон | Назначение |
|---|---|
| {{{Адрес}}} | Составное SMW-свойство «Адрес» |
| {{{Хх}}} | Был битый — починен |
| {{{2gis}}} | Подстановка координат для виджета 2GIS |
| {{{Clickable button 2}}} | Кнопка «Найти недвижимость» |
| {{{Navbox}}} | Навигационная панель |
Экспериментальные
Шаблон:Exp/*— копии основных шаблонов для тестов на Тест-объявление.- Шаблон:Neuromancer/styles.css — киберпанк-стиль, временно не используется.
Модули (Lua)
| Модуль | Назначение |
|---|---|
| Module:Phone | Формат телефона: +7 (923) 701-73-25 |
| Module:Clickable button 2 | Кнопки MediaWiki |
| Module:Navbar | Навигация для Navbox |
| Module:Arguments, Module:Yesno, Module:String | Стандартные Lua-утилиты |
| Module:Category handler | Управление категориями |
| Module:Math, Module:Calendar, Module:Delink, Module:Separated entries | Вспомогательные модули |
| Module:Check for unknown parameters | Проверка недокументированных параметров |
| Module:ArchiveState | Работа с архивом |
| Module:Якорь | Якоря навигации |
Виджеты
| Виджет | Назначение | Статус |
|---|---|---|
| Widget:2gis | Карта 2GIS | Активен |
| Widget:Filters | Фильтр недвижимости | Активен |
| Widget:Floors, Widget:Floors2gis | Навигация по этажам | Активен |
| Widget:Vkwall, Widget:Vk messages | Стена и чат VK | Активен |
| Widget:Whatsapp | Кнопка WhatsApp | Активен |
| Widget:YouTube, Widget:Iframe | Видео и iframe | Активен |
| Widget:Jcarousel | jQuery-карусель | Активен |
| Widget:Geometria | 3D-планировки | Активен |
| Widget:OllamaChat, Widget:Xterm.js | AI-чат, терминал | Эксперимент |
| Widget:Facebook Like Box, Widget:Mail.ru, Widget:Twitter Follow Button | Соцсети | Не используются |
| Widget:Vkwallakatuisky | Старая стена VK | Не используется |
| Widget:Yandex.Metrika | Счётчик | Не используется |
Формы (PageForms)
| Форма | Назначение |
|---|---|
| Форма:Коммерческая недвижимость | Объявления (основная) |
| Форма:Коммерческая аренда | Аренда |
| Форма:Организация | Организации |
| Форма:Офис | Офисы |
| Форма:Жилой дом | Жилые дома |
| Форма:Здания | Нежилые здания |
| Форма:Квартира, Форма:Коттедж | Жильё |
| Форма:Франшиза | Франшизы |
| Форма:Готовый бизнес | Продажа бизнеса |
| Форма:Студия | Студии |
| Форма:Застройщик | Застройщики |
| Форма:Управляющие компании | УК/ТСЖ |
| Форма:Аварийно-диспетчерские службы | Службы ЖКХ |
| Форма:Научные организации | НИИ |
CSS и стили
Основные
| Страница | Содержимое |
|---|---|
| MediaWiki:Common.css | listing-table, listing-description, listing-contacts, archive-banner, owner-badge, price, uc-phone, uc-toc |
| MediaWiki:Filters.css | Форма фильтра, пагинация |
| MediaWiki:Common.js | Заглушка (карусель на CSS) |
Гаджет SlickCarousel
| Страница | Содержимое |
|---|---|
| MediaWiki:Gadget-SlickCarousel.css | Сетка uc-gallery/uc-card (CSS Grid 4-в-ряд) |
| MediaWiki:Gadget-SlickCarousel.js | Заглушка |
| MediaWiki:Gadgets-definition | default] |
Стили зданий
Шаблон:Фрунзе 5/styles.css, Шаблон:Октябрьская 42/styles.css, Шаблон:Октябрьская 52/styles.css, Шаблон:Вокзальная магистраль 16/styles.css, Шаблон:Никитина 20/styles.css, Шаблон:Кобра/styles.css, Шаблон:Кронос/styles.css, Шаблон:РЕКА/styles.css, Шаблон:Ройял Парк/styles.css, Шаблон:Академпарк/styles.css, Шаблон:Версаль/styles.css, Шаблон:Granit/styles.css, Шаблон:Sibmoll/styles.css, Шаблон:FloorsNavigation/styles.css, Шаблон:Gallery/styles.css
Экспериментальные стили
- Шаблон:Neuromancer/styles.css — киберпанк, неон, моноширинный шрифт
- Шаблон:Darkvector/styles.css — тёмная тема
Бизнес-центры
Единая дизайн-система для страниц бизнес-центров. Обкатана на трёх опорных БЦ.
Опорные БЦ
| БЦ | Страница вики | Источник | Акцент |
|---|---|---|---|
| Октябрьская 42 | Бизнес-центр На ОКТЯБРЬСКОЙ | https://okt42.center | #6a7d8c |
| Фрунзе 5 | Фрунзе 5 | https://bcf5.ru | #008a8c |
| На Вокзальной | Бизнес-центр на Вокзальной | https://bc-nsk.ru | #ff8201 |
Данные для Сведений (площадь, год, этажность, класс) — с ЦИАН: https://novosibirsk.cian.ru/snyat-pomeshenie-v-biznes-centre/
Шаблоны БЦ
| Шаблон | Назначение |
|---|---|
0 офисов свободно
|
Строка «N офисов свободно · площадь · цена» |
Общая площадь
—
Год постройки
—
Этажность
—
Парковка
—
Класс
—
|
Карточка: площадь, год, этажность, парковка, класс, ставка |
| {{Офис свободен <БЦ>}} | Карточка свободного офиса (format=template) |
| {{Организация <БЦ>}} | Карточка организации (format=template) |
/
|
Обёртки сетки карточек |
| Кнопка сайта (class=bc-site-btn) | |
| Строка соцсетей vk · tg · email |
Структура главной страницы
- pagebanner с link на главную
- Header (БЦ/Header)
- Сводка БЦ
- Сведения БЦ
- Галерея (slideshow)
- == Аренда офисов == — карточки через #ask format=template
- == Организации == — свёрнутый bc-org-block
- == На карте == — 2gis, Clickable button, Соцсети БЦ
- Категории
Структура этажа
- pagebanner с link на главную
- Header с номером этажа
- == N-этажное крыло == (если два крыла — отдельные секции)
- imagemap (НЕ трогать)
- == Аренда == — карточки
- == Организации == — bc-org-block
- == Галерея ==
- +
CSS-классы bc-*
| Класс | Назначение |
|---|---|
| .bc-nav, .bc-nav__tab, .bc-nav__tabs | Навигация по этажам (пилюли) |
| .bc-nav__logo | Лого по центру (опционально) |
| .bc-summary | Строка сводки свободных офисов |
| .bc-info | Карточка сведений (CSS Grid) |
| .bc-cards, .bc-card | Сетка карточек офисов/организаций |
| .bc-org-block | Свёрнутый блок организаций |
| .bc-site-btn | Кнопка сайта (перебивает .mw-ui-button) |
| .bc-social | Строка соцсетей |
Правила (железобетон)
- Imagemap и SVG-координаты не трогать.
- Крылья этажей (== N-этажное крыло ==) не объединять и не удалять.
- Заменять только #ask broadtable внутри секций Аренда/Организации.
- и сохранять.
- Акцент-цвет у каждого БЦ свой (см. таблицу выше).
- Данные Сведений — с ЦИАН или сайта-источника.
Неиспользуемые элементы
| Элемент | Причина |
|---|---|
| JS-версия SlickCarousel | CDN недоступен, заменён на CSS |
| Шаблон:Neuromancer/styles.css | Эксперимент |
| {{{Квартиры}}} | Дубль {{{Квартира}}} |
| {{{Орг}}} | Дубль {{{Организация}}} |
| {{{Районы}}} | Редирект, нужен контент |
| Виджеты соцсетей (Facebook, Twitter, Mail.ru) | Не актуальны |
| Widget:Yandex.Metrika | Счётчик не используется |
| Widget:Vkwallakatuisky | Старая стена VK |
| Widget:OllamaChat, Widget:Xterm.js | Эксперименты |
Галереи и фото
Миграция с <gallery> на шаблоны:
- {{{Фото объявления}}} — для числовых ID (завершено 2026-08-16: 803/805, 2 легитимные галереи на не-объявлениях)
- {{{Фото}}} — для зданий и объектов
Формат:
{{Фото объявления
|Фото=119381555_01.jpg, 119381555_03.jpg, 119381555_05.jpg
}}
SMW-свойства (основные)
Всего 146 свойств. Ключевые:
| Свойство | Тип | Где ставится |
|---|---|---|
| Город, Улица, Номер дома, Район, Ориентир | Страница | Местоположение |
| Адрес | Текст | Адрес (составное) |
| Архив | Булево | Местоположение / Архив |
| Тип здания, Тип помещения, Назначение помещения | Страница | Информация об объекте |
| Площадь, Этаж, Цена, Высота потолков, Мощность электросети, Год постройки | Число/Текст | Информация об объекте |
| Отдельный вход, Интернет | Страница | Информация об объекте |
| Описание, Дата публикации | Текст | Описание |
| Собственник, Имя, Организация | Текст/Страница | Контактные данные |
| Офис свободен, Арендная ставка, Арендная плата | Текст/Число | Офис |
Imagemap и SVG-поэтажные планы (ВАЖНО)
imagemap — критичная ручная работа по поэтажным планам зданий. Связывает координаты SVG-файлов со ссылками на страницы офисов и помещений.
Формат:
<imagemap> Файл:Крылова 26 5 этаж.svg|thumb|center|750px poly 239 178 268 178 ... [[Крылова 26 офис 533|533]] rect 336 337 448 416 [[Крылова 26 офис 530|530]] </imagemap>
Правило для автоматизации: любые массовые скрипты обязаны игнорировать содержимое <imagemap> и SVG-координаты. Регекспы по «числам, похожим на телефон» ловят координаты poly/rect — это ошибка, ведущая к порче планов.
Страницы с imagemap — этажи БЦ и ТЦ (Фрунзе 5, Октябрьская 42, Крылова 26, Красноярская 35, Сан Сити, Ройял Парк и др.). Это ядро структуры зданий, не трогать массово.
Автоматизация
Учётные записи
| Учётка | Роль |
|---|---|
| Rodion | Владелец (Администраторы) |
| Deepseek | Pro: шаблоны, CSS/JS, SMW, документация |
| DeepseekFlash | Лёгкие рутинные задачи |
| User@ImportBot | Массовый импорт |
Серверные команды
php maintenance/runJobs.php --quiet php maintenance/refreshLinks.php php extensions/SemanticMediaWiki/maintenance/rebuildData.php -v
Пустые страницы к удалению
Требуется группа «Администраторы» (Rodion).
39 пустых: Авито, Аренда, Архитектура, Барнаул, Каменка, Карьер Мочище, Кирпичная Горка 5-я, Кондратюка площадь, Красный Яр, Левобережный рынок, Линейный, Мегаполис, Металлсервис-групп, Не работает, Недвижимость, Новосибирская область, Новосибирский автобус, Новосибирский троллейбус, Новосибирское маршрутное такси, ПКиО им. Дзержинского, Парк Кирова, Площадь Кирова, Площадь Свердлова, Площадь Сибиряков-Гвардейцев, Площадь Труда, Работа, Светлая роща, Сибирская академия государственной службы, Сквер Героев Революции, Спецпроект, Студия, Телецентр, Тихий центр, Троллейный, Центр, Центральный округ, Шерегеш, Сибиряков-Гвардейцев 47 к5, Факультет информационных технологий НГУ.
30 офисов: Большевистская 14, офисы 6.11—6.40.