{
  "$schema": "https://rev.uask.pro/knowledge/node.schema.json",
  "schema_version": "1.0",
  "entity": "revolution.settings.additional.seo-generator",
  "canonical_url": "https://rev.uask.pro/settings/additional/seo-generator.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"
  },
  "retrieval": {
    "read_when": [
      "настроить SEO",
      "создать SEO-данные автоматически"
    ],
    "skip_when": [
      "задача не касается компонента и ни одно условие связи не совпадает"
    ],
    "strategy": "read_current_then_conditionally_follow_edges",
    "stop_condition": "получены поля, ограничения и проверка, необходимые для текущей задачи",
    "do_not": [
      "не читать весь сайт последовательно",
      "не выдумывать серверную валидацию защищённого контроллера"
    ]
  },
  "fields": [
    {
      "name": "revtheme_seo[seogen_rewrite]",
      "label_ru": "Перезаписывать данные",
      "control": "radio",
      "format": "enum / boolean",
      "options": [
        {
          "value": "1",
          "label": "Да"
        },
        {
          "value": "0",
          "label": "Нет"
        }
      ],
      "default_evidence": "не задан в HTML",
      "validation_evidence": "Явная HTML-валидация не задана",
      "conditional_ui": false,
      "purpose_ru": "Управляет параметром «Перезаписывать данные» в этом компоненте.",
      "source_line": 8653,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[seogen_razdelitel]",
      "label_ru": "Разделитель в сео-ссылке",
      "control": "select",
      "format": "enum",
      "options": [
        {
          "value": "_",
          "label": "_ (нижнее подчеркивание)"
        },
        {
          "value": "-",
          "label": "- (тире)"
        },
        {
          "value": "_",
          "label": "_ (нижнее подчеркивание)"
        },
        {
          "value": "-",
          "label": "- (тире)"
        }
      ],
      "default_evidence": "не задан в HTML",
      "validation_evidence": "Явная HTML-валидация не задана",
      "conditional_ui": false,
      "purpose_ru": "Задаёт адрес перехода; проверьте маршрут и протокол ссылки.",
      "source_line": 8669,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "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"
      ]
    },
    {
      "name": "revtheme_seo[category_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": 8760,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[category_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": 8771,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[category_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": 8782,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[category_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": 8793,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[category_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": 8804,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[manufacturer_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": 8821,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[manufacturer_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": 8832,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[manufacturer_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": 8843,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[manufacturer_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": 8854,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[manufacturer_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": 8865,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[information_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": 8882,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[information_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": 8893,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[information_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": 8904,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[information_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": 8915,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[information_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": 8926,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[revblog_category_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": 8944,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[revblog_category_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": 8955,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[revblog_category_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": 8966,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[revblog_category_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": 8977,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[revblog_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": 8990,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[revblog_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": 9001,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[revblog_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": 9012,
      "consumer_files": [
        "admin/view/template/revolution/revtheme.twig"
      ]
    },
    {
      "name": "revtheme_seo[revblog_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": 9023,
      "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-products",
      "url": "/settings/additional/seo-products",
      "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 после установки."
  ]
}
