Vizen Shop

Transfer a finished site

/docs/skill/vizen-transfercurrentМашинный перевод с английского

Ты - это ты. Движущийся, а не проектирующий. The owner's site определяет look; Ваша работа Чтобы он появился в shop Как бы то ни было, перезагрузите data тот shop собственник (menu, цены, cart, forms) и доказать, что result Скриншоты, никаких редизайнов, нет разрезать на части sections или составных частей, нет path Переписывание, никаких улучшений, никто Компонент только тогда, когда owner Запросить одну наценку на многих pages.

1.Это ваш path?

У тебя естьИди.
папка, ZIP, репо или export который уже отображается в браузере, чтобы стать shop's pages (live цены, cart, shop header)здесь
целое multi-page site то keep отдельно, байт за байтома site папка, Не этот навык: category type:"site", один ZIP то POST /site-folders/{id}/releases/zip?base=none&publish=1, publish тот category — /docs/file-storage; служил в section's path, песочница (нет печенья, нет) localStorage), нет shop header, cart или vz- ключи
Неизвестно, кто из двухСпроси owner Один вопрос: не выбирайте для них
Пока ничего — а page Строить с нуляvizen-start и три его вопроса
Вопрос о vz- ключи, частичные релизы, images внутри одного widgetvizen-own-markup
groups, связывание, system pages (cart, account…), stickyvizen-chrome
товары, categories, фильтрыvizen-catalog
"200 и ничего не изменилось."vizen-troubleshoot

The full Контракт — что платформа делает с вашим сайтом file, Копия · Remap · drop таблица, рамочные примечания — это GET /docs/transfer. Прочитайте один раз, before шаг 2.

2.Что дает вам платформа (измеряется, а не обещается))

  • папка = widget. А. level-3 html document Это папка: index.html в корень, css/js/assets в подпапках, относительные пути от корня. загружать его; files обслуживаются из /_html/{doc}/{rid}/… с одинаковым гнездованием.
  • Реальный page DOM. Нет тени DOM, Нет iframe, нет sanitiser: <script> и <link> - Закрыть охраняемую зону. - Если только коробка не отсутствовала. props.html.boxed: true. Проверить fixed авторство и авторство visibility side воздействия в /docs/own-markup §7.2 before многообещающая геометрия.
  • Твой `<body>` становится <div class="vz-body vz-body-{doc}" data-vz-base="/_html/{doc}/{rid}/">; body, html и :root Селектор в вашем CSS Переписывается на этот class; из <head> Платформа сохраняет link/style/script/noscript, движение title и meta description входить page SEO и бросает все остальное. document и чистая разметка принимаются.
  • Сценарии бегут first Интервью и повторный просмотр after в-site навигационная система. Вводить И снова и снова в document's vz:navigate event; never ждать DOMContentLoaded Пути, построенные одним script Начать с document.currentScript?.closest('.vz-body')?.dataset.vzBase ?? window.VZ_ASSET_BASE ?? '' (external или defer script: document.querySelector('.vz-body-<id>')?.dataset.vzBase).
  • Каскад делится. Витрина корабля Tailwind Preflight: h1–h6 inherit size и вес, ul/ol Потерять пули, a Наследует цвет и теряет подчеркивать, * имеет нулевую маржу и padding, img это display: block, button Все, что вы стилизовали, явно выживает; то, что вы оставили Браузер по умолчанию сбрасывается - отправляйте свой own base Стиль под корнем class.
  • Охраняемые зоны (/cart, /checkout, /account, /wishlist, /orders, /deals, /dashboard): Ваши рендеры разметки, сценарии не запускаются, и widget's относительный <link rel="stylesheet"> И с ними расстаются — header's CSS принадлежит к layout папка (ссылка везде) или inline. hidden Выжить там, data-* не.
  • Счетчики, вход, поисковые предложения не нужны script: vz-cart-count, vz-fav-count, vz-auth, vz-user-initial, vz-search; events vz:cart, vz:fav, vz:auth на document (/docs/own-markup §4.0. Ссылки открыты без перезарядки; vz-reload Выбрать один из.
  • Живи data Сервер является-side замена: {{ product.name }}, vz-for="p in products" (тот section's feed, ≤ 48 rows, Нет фильтров или paging), vz-for="m in menu", vz-add-to-cart, vz-cart-count, href="form:<id>". Имена, которые приходят от GET /docs/vz-keys.json, never из памяти.

3. The order работа

  1. Паспорт. GET /v1/account/token. contour: "dev" Написал проект проекта Владелец видит в <slug>--dev.<zone>; "prod" Напишите живой сайт на каждый Освобождение - затем следуй mode_guide: Новые страницы рядом с рабочими, откат Уровень 3 нуждается в хозяине или администраторе. shop.
  2. инвентаризация. Один столик: source Страница или часть → цель (виджет страницы), layout папка, chrome группа, product или category Шаблон) → данные для переобвязки → Что не может двигаться (SPA время выполнения, роутер, own fetch, код сервера, сервис Работник. Полученный клиентом SPA Экспортируется статически первым: один маршрут = одна папка, base: './' (папка сайта берет весь экспорт, §1).
  3. Раскладная папка — сайт в целом CSS, шрифты, favicon, скрипты: node backend-3D/tools/html-transfer/transfer.mjs ./theme --theme <id> (Ид: GET /content-blocks, ряды с group_type == "theme", тот Самый ранний из них – shop's default). проверять: GET /themes/<id>/site ответы base и scope_class; Корень страницы несет .vz-theme-{doc}.
  4. Заголовок и footer. transfer.mjs ./header --name "Header" — без --page Он создает document и публикует релиз, ничего не Для того чтобы распечатать, на выходе document Тогда иди. html блокировать (kind:"html", props.html:{html_document_id, level:3}) → группа group_type:"chrome" с props.widgets:[<block id>] → PUT /design/bindings/shop/0 {"slots":{"header":<G_h>,"footer":<G_f>}} (Один раздел: /category/<id>; один layout: /theme/<id>). Запрашивающие органы: vizen-chrome §2-3. Стикки header: vz-sticky на корневой узле; header's CSS — в layout папка или встроенный <style>, Не родственник <link> (уронить /cart). проверять: GET /v1/storefronts/resolve?slug=<shop> → chrome; Откройте домашнюю страницу, а product страница и /cart — Стиль на всех трех.
  5. Страницы. Страница должна существовать как type:"page" (GET /categories; создавать с помощью POST /categories {"item":{"name":"…","type":"page","is_published":true,"seo":{"slug":"…"}}}). transfer.mjs ./home --page <slug> --validate-only → исправить отчет → transfer.mjs ./home --page <slug>. Rerun - это новый релиз и загрузка Изменены только файлы; --doc <id> --rollback возвращает предыдущий. Страница сохраняет крошки хлеба платформы и движется над вашим виджетом.; 1:1, выключите их {"page":{"hideSystemBlock":true}} на __page:top зона блокировки (/docs/transfer §4.5) Проверить: открыть url тот командные принты — ничего из платформы над первым разделом.
  6. Продукт и category шаблоны. transfer.mjs ./product --name "Product template" → html Блокировка группы group_type:"product" → PUT /design/bindings/category_children/<root category id> {"slots":{"body":<G>}} (Все поддеревья; один product: /product/<id>). А. category Шаблон является группа category в слоте body; Сохраняйте платформу productListing внутри него, когда нужны фильтры и пейджеры. Проверьте: два product страницы Покажите по одной карте, и цена будет равна GET /products/{id}.
  7. Обвязка данных. Меню → vz-for="m in menu"; цена → {{ p.price_text }}; покупать → vz-add-to-cart="{{ p.id }}"; список пожеланий → vz-fav; формы → href="form:<id>"; внутренний links → /path или vz:page/<id>. Поставить vz-for и vz-if На разных узлах. Проверяйте.: curl Страница и груп a реальный product Название в сыром HTML; добавить item В тележку, смотрите на стойку.
  8. Проверить и сообщить. Открыть напрямую URL и Клик с другой страницы; Скриншоты 1440 и 390; консоль без ошибок и без 404s /_html/; /cart Покажи свой путь header; --doc <id> --list показывает Освобождение.: links, Оба скриншота, что было отскока, что было уронено и почему, команда отката никогда не печатайте токен.

4 Никогда — только то, что платформа отказывается или ломает

  • Пути, которые покидают папку (../x, absolute Пути к своим own files) — ref.outside / ref.missing; http:// ресурсы — ref.http; сервер исполняемые файлы — file.forbidden; navigator.serviceWorker.register; секундочку .html в одном widget папка — page.extra (а multi-page site Сохраняется целое, а site папка, §1); more более 500 files, ан HTML file над 2 MB, а file более 50 MB, Выпуск более 60 MB;
  • а prod key для итераций; content существует только after а script бежит ( empty SPA - оболочка; цены или меню, набранные вручную, где shop Они есть у них.; init на DOMContentLoaded Одиноко; скачать files Один за другим через склад API; level-1 Документы для передачи;
  • печатать токен; git; писать на cart, checkout или account поток.

5. Ссылки

  • GET /docs/transfer — Договор, копия · пересдача · drop, Фреймворк, молча ignored
  • vizen-chrome — groups, связывание, system pages, sticky
  • vizen-own-markup §2-3 и GET /docs/vz-keys.json — ключи и scope fields
  • backend-3D/tools/html-transfer/README.md — Каждый флаг; examples/ — стартовый комплект
  • vizen-troubleshoot — когда API сказал yes и site Не говори "нет"

Исходник: https://api.vizen.shop/docs/skill/vizen-transfer?full=1

Работает в демо-режиме