Перейти до змісту
Домент ipb-board.ru продається.

Самостоятельный перевод хуков и компонентов

Рекомендовані відповіді

Опубліковано
  • Адміністратор
1) Для того чтобы что-то перевести для установки, нам потребуется удобный текстовый редактор. Я рекомендую использовать программуNotepad++, скачать её можете тут: " notepad-plus-plus.org ". Почему именно этот редактор? Потому что он бесплатный, работает со всеми популярными языками программирования и подсвечивает ошибки в коде, которые в обычном блокноте можно и не заметить!

2) Теперь нам нужно понять отличие перевода хуков и компонентов (Если речь идёт о переводе и последующей установке).
В хуке всё просто, ибо там, как правило, один файл где всё спрятано, редко к хукам прилагаются файлы для загрузки, в которых фраз для перевода я не встречал. Короче, в хуке переводим фразы только в файле самого хука.
В компоненте чуть сложнее, там есть несколько файлов, их количество зависит от его крутости. Обычно нужные нам файлы, где спрятаны фразы для перевода находятся в папке "/admin/applications_addon/other/компонент/xml", но это не правило. Бывает некоторые слова и фразы спрятаны и в других файлах, да ещё и зашифрованы, хотя такое я не встречал, для этого придётся искать нужные фразы по всем файлам компонента. И в итоге, получается что, в компоненте переводим фразы в некоторых файлах папки "xml" и в других файлах если есть необходимость.

1) Для того чтобы что-то перевести для установки, нам потребуется удобный текстовый редактор. Я рекомендую использовать программуNotepad++, скачать её можете тут: " notepad-plus-plus.org ". Почему именно этот редактор? Потому что он бесплатный, работает со всеми популярными языками программирования и подсвечивает ошибки в коде, которые в обычном блокноте можно и не заметить!

2) Теперь нам нужно понять отличие перевода хуков и компонентов (Если речь идёт о переводе и последующей установке).
В хуке всё просто, ибо там, как правило, один файл где всё спрятано, редко к хукам прилагаются файлы для загрузки, в которых фраз для перевода я не встречал. Короче, в хуке переводим фразы только в файле самого хука.
В компоненте чуть сложнее, там есть несколько файлов, их количество зависит от его крутости. Обычно нужные нам файлы, где спрятаны фразы для перевода находятся в папке "/admin/applications_addon/other/компонент/xml", но это не правило. Бывает некоторые слова и фразы спрятаны и в других файлах, да ещё и зашифрованы, хотя такое я не встречал, для этого придётся искать нужные фразы по всем файлам компонента. И в итоге, получается что, в компоненте переводим фразы в некоторых файлах папки "xml" и в других файлах если есть необходимость.

И есть способ перевода, когда хук или компонент уже установлены, в этом случае всё делается через АЦ. Этот и другие способы рассмотрим дальше.

3) Давайте начнём разбирать непосредственно сам персонализированный перевод, будь то хук или компонент, будь то перед установкой в файлах или после через АЦ.

Перевод хука для установки:
Открываем файл хука и первое что видим, это кучу информации про наш хук в теге:

<config></config>

Там название, описание, автор, почта, сайт и т.д
Редактируем если нужно, например, название и описание переводим и т.д. под наши нужды.
Дальше идёт уже кракозябра хука, её не трогаем.
А уже за ней скрываются наши языковые фразы.
В теге:

<setting></setting>

Находятся настройки, которые потом будут в АЦ и которыми вы будете настраивать хук.

А в теге:

<language></language>

Паблик-фразы, которые уже будут отображаться не в АЦ, а на форуме.

Теперь подробней что трогать, а что нет.
Начнём с названия настроек, то есть что в теге <setting />, сразу пишу теги и что между ними находится:

<conf_title_title>Название хука</conf_title_title> <conf_title_desc>Описание настроек хука</conf_title_desc><conf_title_tab>Группа настроек</conf_title_tab>

Остальное трогать не рекомендуется. Это что касается кнопки в настройках АЦ, которая будет, например, во вкладке "Модификации".

А теперь сами настройки хука, которые так же в теге <setting />, но ниже:

<conf_title>Название опции</conf_title><conf_description>Описание опции</conf_description>

Это самый простой вариант какой-то опции. Но могут быть всякие выпадающие меню на выбор в настройках, и все эти слова будут находиться между тегами <setting />, так что не должны потеряться. Надеюсь смысл понятен.

Публичные фразы хука, которые уже в теге <language />, и тут, запомните, нам нужна только строчка с тегами:

<word_default></word_default>

Куда что писать?
Например, в файле у нас:

<language><word_app>core</word_app><word_pack>public_global</word_pack><word_key>membersSidebarStats_likes</word_key><word_default>likes</word_default></language>

И вы переводите только ключевое слово, не трогая другие:

<word_default>лайки</word_default>

Или "лайков", или "баллов репутации", или "баллы репутации", тут уже и начинается другая работа, поймать смысл перевода нашего могучего русского языка с английского неочёмского. Так же и с настройками, заменяете английские фразы в нужных тегах на свои и всё.
На этом с переводом хуков всё. Просто сохранили и установили. Проблем особых возникнуть не должно.

Перевод компонента для установки:
Чтобы перевести компонент нам нужна папка "/admin/applications_addon/other/компонент/xml".
Там может быть несколько файлов, и запомните, самые главные это:
information.xml - Информация про компонент, как в файле хука в начале.
admin_компонент_language_pack.xml - Фразы админки
public_компонент_language_pack.xml - Фразы паблика
И ещё иногда есть такой, когда настройки не в "admin_компонент_language_pack.xml", а в:
компонент_settings.xml - Настройки компонента

Что же мы найдём в этих файлах?
information.xml - Тут такая же фигня как и в начале файла хука, информация про компонент, только уже в теге:

<information></information>

Как обычно название, описание, автор и т.д.
Но не забывайте про:

<public_name></public_name>

Публичное название компонента, это перевод кнопки, которая появляется обычно рядом с кнопками "Форумы", "Пользователи", то есть внавигационном меню. Ну и не забываем сохранять файл если редактировали.

admin_компонент_language_pack.xml - Фразы, которые будут в АЦ
public_компонент_language_pack.xml - Фразы, которые будут на форуме у компонента
По содержимому эти два файла одинаковы, вот я их и объединил.
Что в них будет? Куча повторяющихся кракозябр, но нам пофигу на них, всё что нам нужно из этого, это то что находится внутри этого тега:

<word_default></word_default>

Прям как в хуке помните? Вот аналогично между этих постоянно повторяющихся тегов вы будете видеть слова, которые нужно переводить.

Например, хлоп, это:

<lang><word_app>tournaments</word_app><word_pack>admin_tournaments</word_pack><word_key>add_cat</word_key><word_default>Add Category</word_default><word_custom/><word_default_version>31007</word_default_version><word_custom_version/><word_js>0</word_js></lang>

И вы переводите лишь этот кусочек ключевой:
Добавить категорию
А всё остальное оставляете как есть.
Как перевели всё между тегами , сохранили файл, готово. Осталось установить компонент.

компонент_settings.xml - Если есть этот файл, значит и компонент не мелкий, и куча настроек. В нём настройки, которые будут в АЦ. Насчёт того что в этом файле, всё то же, что в файлах хуков в части настроек АЦ хука. Можете вернуться и сравнить. Рекомендации точно такие же.

Есть конечно ещё и другие файлы, бывает ещё и папка с хуками тут же, которые в свою очередь тоже нужно переводить если есть, ведь там хуки которые с компонентом устанавливаются. Рекомендую так же просматривать оставшиеся файлы на наличие в них фраз для перевода.

Перевод установленных хуков и компонентов через АЦ
Когда мы хук или компонент установили, переводить немного, и из-за этого переустанавливать неохото, ещё что-нибудь, то можно редактировать языковые пакеты и через АЦ, то есть через наш любимый Админ Центр.

Для этого входим в него, жмём сверху в меню "Внешний вид", в выпадающем меню "Языки", тут кстати мы можем экспортировать и импортировать языковые пакеты уже для установленных компонентов, нажимая справа стрелку вниз, и выбирая нужный. Но сейчас не про это, далее тыкаем на наш "Русский" язык. Теперь вы вошли в редактирование языковых пакетов непосредственно через АЦ.

Тут мы видем поиск и все разделы. Если речь идёт о переводе компонента, жмём на нужный раздел, где наш компонент, так даже быстрей будет если имеем ввиду перевод множества слов. Если же речь идёт о переводе всего нескольких слов, то гораздо проще использовать поиск, а если переводим какое-то слово из хука, то нам кроме поиска искать то и не чем, то есть если переводим фразу из хука, то ищем через поиск, в разделах только компонентные фразы.

Пример. Нужно нам какое-то слово перевести в хуке, ну пусть это слово "Topic", пишем в поиск, ищем, оно находится и строго справа от него будет поле, где вы пишете для этого слова перевод. Слово не обязательно английское, тут вы можете и любое русское слово найти и изменить.

Есть недостатки поиска, если в поиск написать какое-то популярное слово, тот же "Topic", то скорей вы замучаетесь искать именно нужное слово по страницам поиска, ибо он много таких слов найдёт. И ещё если какое-то слово ищите, то обязательно соблюдайте регистр, то есть если слово с большой буквы, такое и пишите, и наоборот, ну и не пишите в поиск слова с двоеточиями и другими знаками - не найдёт.

Бывает такая проблема, что при изменении языковых пакетов через АЦ вылазит такая ошибка: "Невозможно перевести защищенный пакет языков", то не паникуем и читает эту статью. Исправляется за пару минут.

Ну и в заключении бы стоило обратить момент на то, что есть файлы языкового пакета, те же, которые в папке "xml", в них перевод для установки компонента, там ключ каждой фразы, само слово для этого ключа, группа этих слов, там всё ещё относительно понятно, а есть файлы языкового пакета, которые мы экспортируем из АЦ, в которых сплошная каша символов, где ничего не понятно, в них перевод для уже установленного компонента, соответственно из-за каши внутри файла как переводить не ясно. Отсюда вывод, что переводить можно только предустановочные файлы, а не там где уже готовый перевод и конвертация из одного в другое невозможна.

Автор статьи: WzGeee

Для публікації повідомлень створіть обліковий запис або авторизуйтесь