|
PmWikiRu /
ИнтернационализацияПожалуйста, экспериментируйте в песочнице! PmWiki поддерживает интернационализацию веб страниц допуская присутствие акцентных символов в именах страниц и почти полную настройку диалогов PmWiki. Основная перестройки обеспечивается посредством функции XLPage() в PmWiki загружающей набор переводов переменных со страницы вики (обычно назавающихся XLPage, но не обязательно). Загрузка страниц переводовСтраницы для многих языков, таких как Французский, Немецкий, Датский, Испанский и Русский уже сделаны и есть на сайте pmichaud.com. Вы можете загрузить архив с этими переводами отсюда: http://www.pmwiki.org/pub/pmwiki/i18n/. Просто загрузите подходящие архивы и распакуйте их в папку, содержащую установленую pmwiki.php. Архив содержит ряд файлов страниц размещающихся в папке wikilib.d/ и некоторые сценарии для переводов пользующихся кодировками символов отличных от iso-8859-1, которая является кодировкой по умолчанию для PmWiki. После того как страницы переводов установлены язык включается добавлением в файл config.php вызова XLPage(). Например, для включения Русско-язычных диалогов надо указать XLPage('ru','PmWikiRu.XLPage');
указывающий загрузить переводы для Русского языка ('ru') со страницы PmWikiRu.XLPage. Эта функция превосходно подходит для загрузки нескольких страниц - так что, если вы захотите создать свой собственный перевод не затрагивая полученого из i18n.tgz, то просто сделайте другую страницу (смотри ниже) и загружаете её как указано далее: XLPage('ru','PmWikiRu.XLPage'); # из i18n.tgz XLPage('ru','PmWikiRu.XLPageLocal'); # Мой собственный перевод Если вы задумали использовать на вашем сайте несколько языков и используете группы для выбора языка, то возможно вы захотите разместить такой код в файлах местной подстройки (смотри Настройка отдельных групп). К примеру, если ваш сайт публикуется на Русском и Английском языках, а Русские страницы находятся в группе называющейся Ru, то вы можете создать файл с именем Ru.php в папке local/ с таким содержанием: <?php if (!defined('PmWiki')) exit(); ##Изменить на Русский язык XLPage('ru','PmWikiRu.XLPage'); Для доступа к Русской документации в группе PmwikiRu вы в праве сделать страницу c тем же содержимым под именем PmWikiRu.php. В файле En.php нет необходимости, так как в данном случае Английский язык является изначальным. В качестве альтернативного способа можно добавить в config.php проверку на наличие в группе страницы XLPage и автоматическую подгрузку оной: $xlpage = FmtPageName('$Group.XLPage', $pagename); if (PageExists($xlpage)) XLPage($xlpage, $xlpage); В этом случае вам надо скопиривать соответствующую страницу XLPage в любую группу нуждающуюся в поддержке другого языка. Создание Новых ПереводовЕсли для выбранного вами языка страница перевода отсутствует, то её просто сделать! Страница перевода XLPage просто содержит строки в следующем формате: 'фраза' => 'переведёная фраза',
где "фраза" это международная фраза (отмеченая 'Search' => 'Поиск',
преобразовывает при выводе "Search" в "Поиск". Файл PmWiki:XLPageTemplate может послужить хорошей отправной точкой в создании новой XLPage -- в него уже включено большинство ключевых фраз PmWiki. Если вы создаёте новые версии страниц PmWiki на других языках - пожалуйста не забывайте добавлять их на главном сайте PmWiki, так чтобы они были доступны для других в архиве i18n.tgz! Термин "i18n" часто используется как аббревиатура для Английского слова "internationalization". Это сокращение произошло из того факта, что в этом слове между "i"(первой) и "n"(последней) есть 18 букв(всего их 20), которые некоторые люди сочли трудными для набора. Вот и осталось от слова только "i", "n" и число букв между ними - 18.
Инструменты для Локализации PmWikiВы можете помочь в локализации PmWiki на ваш язык на оригинальном сайте: << Управление закачками | Документация | ВикиФермы >> Перевод страницы PmWiki.Internationalizations -
Оригинал перевода PmWikiRu.Internationalizations -
Links Terug |