Разделы Написать в Telegram

Экран «Обслуживание»

Здесь редкие и опасные действия. Пять вкладок: «Языковые свойства», «Устаревшие переводы», «Словарь фраз», «Неиспользуемые фразы» и «Уборка».

Языковые свойства

Создаёт свойства и поля, в которые запишется перевод. Сами тексты не переводит — только готовит место.

Отметьте инфоблоки и нажмите «Синхронизировать». Для элементов копируются свойства с суффиксом языка сайта: из TITLE_RU получится TITLE_EN. Для разделов создаются название и описание. Если в Настройках → Что переводить отмечены свойства без суффикса языка или поля разделов, копии создаются и для них.

Кнопка «Создать поля в справочниках» делает то же для highload-блоков: заводит языковые поля у тех справочников, чьи поля отмечены в настройках.

Запускать — после добавления языка перевода, после создания новых свойств и после переноса инфоблока с другого проекта. Повторный запуск безопасен. Что именно создаётся и что никогда не трогается — Синхронизация структуры.

Ненужные языковые свойства

Ниже, на той же вкладке. Если для инфоблока сняли галочку «свойства без суффикса языка», созданные копии остаются в инфоблоке, но больше не заполняются. Проверка показывает такие свойства и есть ли в них данные. Удаление трогает только пустые: свойства со значениями остаются.

Устаревшие переводы

Кнопка «Показать устаревшие переводы» строит список фраз словаря, у которых текст на языке сайта изменился уже после перевода. Список считается по кнопке, а не при каждом заходе: поиск требует просмотра всего словаря.

Дальше либо переведите заново, либо поправьте руками, либо — если перевод всё ещё годится — отметьте и нажмите «Перевод проверен». Отметка снимется, перевод не изменится.

Подробности и два неочевидных ограничения — Очередь и «оригинал изменился».

Словарь фраз

Четыре блока, все про словарь фраз.

Выгрузить в CSV. Кнопка «Скачать .csv» отдаёт весь словарь таблицей: код фразы и колонка на каждый язык. Формат — Импорт и экспорт CSV.

Загрузить из CSV. Выберите файл и нажмите «Загрузить переводы». Импорт CSV — до 8 МБ и 20 000 строк. Кодировка определяется сама. Строки из файла заменяют переводы в словаре, но только по языкам, которые в файле есть.

Названия магазина. Кнопка «Собрать названия магазина» переносит в словарь названия платёжных систем, служб доставки, свойств заказа, типов плательщиков и единиц измерения. Ядро хранит их одним текстом на все языки, и переводить их иначе нечем.

Нажимайте её после того, как завели или переименовали что-нибудь из перечисленного. Дальше эти фразы переводятся как любые другие — на экране Перевод, вкладка «Разовый перевод». См. Платёжные системы и доставки.

Кеш композита. Если на сайте включён композит, страница может отдаваться готовым HTML без выполнения PHP. Правка фразы в словаре тогда не видна, пока статика не сброшена.

Модуль не сбрасывает её на каждую правку: тысяча фраз из CSV дала бы тысячу сносов каталога. Вместо этого загорается отметка, что статика устарела, и одна кнопка «Сбросить» делает это целиком. Включение и выключение перехвата GetMessage() сбрасывают статику сами, без кнопки.

Неиспользуемые фразы

Два шага по порядку.

Шаг 1. Подсчитать, где используются фразы. Модуль считает, в скольких файлах проекта встречается каждая фраза словаря. Идёт короткими шагами: вкладку не закрывайте, остальные страницы сайта в это время открываются. Если у словаря ещё нет поля под счётчик, здесь же будет кнопка, которая его создаст. Как устроен подсчёт — Индексатор использования фраз.

Шаг 2. Просмотреть и удалить неиспользуемые. Список фраз, которые при последнем подсчёте не нашлись ни в одном файле проекта. Без свежего подсчёта список показывает прошлые данные.

Ноль использований не значит «фраза не нужна». Сканер находит только явные вызовы в файлах PHP. Динамические коды, фразы из JavaScript и недавно добавленные попадут в список обязательно, а удалять их нельзя.

Отметьте нужное и удалите. Действие необратимое — восстановить можно только из бэкапа. Есть выгрузка списка в CSV: посмотреть его в таблице спокойнее, чем на экране.

Уборка

Следы отключённых языков

Показывает, для каких языков в проекте что-то создано, и помечает статус: язык перевода, не язык перевода, но с сайтами, не язык перевода и без сайтов.

Кнопка «Проверить» строит подробный отчёт с проверкой, есть ли в свойствах данные. Тот же отчёт выгружается в CSV.

Удалить можно только пустые объекты и только у языков, которых нет среди языков перевода. То, где есть хоть одно заполненное значение, и поле словаря с переводами фраз не трогаются никогда.

Порядок разбора: сначала снять лишний язык в Настройках, вкладка «Языки»; потом выгрузить CSV, посмотреть глазами и удалить пустое. Пока язык числится среди языков перевода, чистка по нему заблокирована — это защита от случайного сноса рабочих свойств.

SEO-переводы удалённых элементов

Записи с переводами SEO-шаблонов, оставшиеся от удалённых элементов, разделов или инфоблоков. Обычно они убираются сами при удалении; сюда попадают, если событие не сработало. Эти удалять безопасно, привязать их уже не к чему. Удаление необратимо.