{
  "$schema": "https://rev.uask.pro/knowledge/node.schema.json",
  "schema_version": "1.0",
  "entity": "revolution.settings.additional.seo-products",
  "canonical_url": "https://rev.uask.pro/settings/additional/seo-products.html",
  "anchors": {
    "doc": "#doc",
    "dev": "#dev"
  },
  "title_ru": "SEO-данные товаров",
  "summary_ru": "Здесь настраивается раздел «SEO-данные товаров» и то, как он выглядит и работает для покупателей.",
  "version_scope": "5.x",
  "source": {
    "kind": "shipped_admin_template",
    "file": "admin/view/template/revolution/revtheme.twig",
    "tab_id": "tab_all_settings_seo_product"
  },
  "retrieval": {
    "read_when": [
      "настроить seo-данные товаров",
      "изменить seo-данные товаров"
    ],
    "skip_when": [
      "задача не касается компонента и ни одно условие связи не совпадает"
    ],
    "strategy": "read_current_then_conditionally_follow_edges",
    "stop_condition": "получены поля, ограничения и проверка, необходимые для текущей задачи",
    "do_not": [
      "не читать весь сайт последовательно",
      "не выдумывать серверную валидацию защищённого контроллера"
    ]
  },
  "fields": [
    {
      "name": "revtheme_seo[product_url][{language_id}]",
      "label_ru": "Сео-ссылка",
      "control": "text",
      "format": "URL or route string",
      "options": [],
      "default_evidence": "не задан в HTML",
      "validation_evidence": "Явная HTML-валидация не задана",
      "conditional_ui": false,
      "purpose_ru": "Задаёт адрес перехода; проверьте маршрут и протокол ссылки.",
      "source_line": 8696,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[product_meta_title][{language_id}]",
      "label_ru": "HTML-тег Title",
      "control": "text",
      "format": "string",
      "options": [],
      "default_evidence": "не задан в HTML",
      "validation_evidence": "Явная HTML-валидация не задана",
      "conditional_ui": false,
      "purpose_ru": "Задаёт отображаемый пользователю текст или заголовок.",
      "source_line": 8707,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[product_meta_h1][{language_id}]",
      "label_ru": "HTML-тег H1",
      "control": "text",
      "format": "string",
      "options": [],
      "default_evidence": "не задан в HTML",
      "validation_evidence": "Явная HTML-валидация не задана",
      "conditional_ui": false,
      "purpose_ru": "Управляет параметром «HTML-тег H1» в этом компоненте.",
      "source_line": 8718,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[product_meta_description][{language_id}]",
      "label_ru": "Мета-тег Description",
      "control": "text",
      "format": "string",
      "options": [],
      "default_evidence": "не задан в HTML",
      "validation_evidence": "Явная HTML-валидация не задана",
      "conditional_ui": false,
      "purpose_ru": "Управляет параметром «Мета-тег Description» в этом компоненте.",
      "source_line": 8729,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[product_meta_keyword][{language_id}]",
      "label_ru": "Мета-тег Keywords",
      "control": "text",
      "format": "string",
      "options": [],
      "default_evidence": "не задан в HTML",
      "validation_evidence": "Явная HTML-валидация не задана",
      "conditional_ui": false,
      "purpose_ru": "Управляет параметром «Мета-тег Keywords» в этом компоненте.",
      "source_line": 8740,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    }
  ],
  "relations": [
    {
      "relation": "part_of",
      "target": "revolution.settings.additional",
      "url": "/settings/additional/",
      "why": "Родительский раздел «Дополнительные настройки».",
      "when_to_follow": "Нужен обзор соседних компонентов этого раздела."
    },
    {
      "relation": "apply_with",
      "target": "revolution.workflow.safe-change",
      "url": "/getting-started/safe-workflow",
      "why": "Безопасное изменение настроек и откат.",
      "when_to_follow": "Перед изменением рабочего магазина."
    },
    {
      "relation": "troubleshoot_with",
      "target": "revolution.troubleshooting.cache",
      "url": "/troubleshooting/cache",
      "why": "Сохранённые настройки могут быть скрыты кэшем шаблона, модификаторов или браузера.",
      "when_to_follow": "Изменение сохранено, но не видно на витрине."
    },
    {
      "relation": "related_by_task",
      "target": "revolution.settings.additional.seo-generator",
      "url": "/settings/additional/seo-generator",
      "why": "Общие задачи: content, navigation, product, seo.",
      "when_to_follow": "Вопрос затрагивает одновременно «SEO-данные товаров» и «Генератор SEO-данных»."
    },
    {
      "relation": "related_by_task",
      "target": "revolution.settings.catalog.compare",
      "url": "/settings/catalog/compare",
      "why": "Общие задачи: content, navigation, product.",
      "when_to_follow": "Вопрос затрагивает одновременно «SEO-данные товаров» и «Сравнение товаров»."
    },
    {
      "relation": "related_by_task",
      "target": "revolution.settings.header.catalog-menu",
      "url": "/settings/header/catalog-menu",
      "why": "Общие задачи: content, navigation, product.",
      "when_to_follow": "Вопрос затрагивает одновременно «SEO-данные товаров» и «Каталог товаров в шапке»."
    },
    {
      "relation": "related_by_task",
      "target": "revolution.settings.home.product-slider-1",
      "url": "/settings/home/product-slider-1",
      "why": "Общие задачи: content, navigation, product.",
      "when_to_follow": "Вопрос затрагивает одновременно «SEO-данные товаров» и «Произвольный слайдер товаров 1»."
    }
  ],
  "uncertainties": [
    "Точная серверная валидация и реализация сохранения скрыты ionCube.",
    "Пустое HTML-значение не считается доказательством фактического default после установки."
  ]
}
