• DONATE to NULLED!
    Вы можете помочь Форуму и команде, поддержать финансово.
    starwanderer - модератор этого раздела будет Вам благодарен!

Обсуждение Двуязычная версия сайта на WP

Статус
В этой теме нельзя размещать новые ответы.

dat

Постоялец
Регистрация
30 Окт 2007
Сообщения
417
Реакции
155
Наверняка многим интересно и полезно было бы узнать как максимально просто и без лишних затрат времени сделать двуязычную версию сайта на движке ВП.
Например, что нужно сделать, чтобы получилось как здесь

Хотелось бы увидеть квалифицированные мнения с кратким описанием наиболее оптимального алгоритма действий.
 
Мде....
исходный код страницы сразу посмотреть никто не мог чтоли? =)))

Вот вам ответ - что там стоит:



Смотрим на пути и видим в явном виде, что стоит qtranslate =)
 
Ок. расскажу как это делается.
На этом сайте, что приведен в первом посте, сделано кривовато - при нажатии на флаг смены языка происходит сброс на главную страницу того языка, на которыйй нажали - это не совсем удобно. Не перевден календарь - тоже легко исправить.
Есть минимум 2 способа локализации абсолютно всего контента сайта.
Делал я такое на каталог статей - пример вот . Единственное, что не доделал пока - это не локализовал плагин the-excerpt-reloaded . И не доделал регистрацию на выбранном языке.
Это было отступление от темы. Теперь как реализовать.
Раз уж здесь идет разговор про плагин qtranslate, то расскажу про этот способ. Включаем qtranslate.
Есть плагин языковой локализации любого элемента блока вот ссылка на страницу плагина , как текста на странице, так и плагинов и тем.
В кратце - ставим этот плагин. Идем в админке Инструменты - Локализация. Там появляется все файлы, которые мы можем перевести.
Вобщем-то все.
Как сделать тему либо плагин переводимый на любые языки ? Бирем тему. добавляем в места, которые надо перевести такой код <?php _e('значение','название_темы'); ?>
Пример :
Кусок кода шапки.
<meta name="generator" content="WordPress
<?php bloginfo('version'); ?>" />
<title><?php bloginfo('name'); ?><?php wp_title(); ?></title>
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>" type="text/css" media="screen" />
Цель, сделать, что бы переводилось название сайта, когда переключаем язык.
Заменяем
<title><?php bloginfo('name'); ?><?php wp_title(); ?></title>
на
<title><?php _e('name','название_темы'); ?></title>
ну или например, где-нибудь в тексте
<h3 class="sidetit_l">Wallpapers</h3>
Заменяем на
<h3 class="sidetit_l"><?php _e('Wallpapers','название_темы'); ?></h3>
Ну и т.д. все элементы страницы.

Теперь в панели локализации в выбранной теме появляются слова name - помним, что это название сайта, Wallpapers - это еще что нибудь, ну и т.д.
Переводим данные слова как сами хотим и генерируем файл языка, который нужен. Таким образом на рзных языках эти фразы будут подменяться на те, что вы указали.
Если вопросы будут - пишите.
 
Пока не проделал вышенаписанное, но есть вопрос, а можно, чтобы по английски было на домене com, а по русски на домене ru?
ну если ты хочеш на разные домены поставить, то что тебе мешает поставить 2 отдельных блога - на *.com - с англ. контентом, а на *.ru - с русским? qtranslate, на сколько мне не изменяет память, имеет 3 режима урлов:
- ru.domen.com/ , en.domen.com/ ....
- domen.com/ru/ , domen.com/en/ ....
- domen.com/?lang=ru , domen.com/?lang=en ....

а в твоем случае проще помойму поставить 2 отдельных ВП на каждый домен
 
Пока не проделал вышенаписанное, но есть вопрос, а можно, чтобы по английски было на домене com, а по русски на домене ru?

Да, конечно, это можно сделать.
Здесь тоже все просто.
С начала теория :
Например, у Вас на хостинге есть, скажем, 2 домена, test.ru и test.com. Соответственно, у Вас создано в корневой дирректории две папки для этих доменов - test.ru и test.com
Задача, что бы домены ссылались в одну папку, в которой установлен wordpress.
Укаждого хостера это делается по разному. У меня в директ панели эта функция называется "Парковки доменов ".
Парковки доменов позволяют направиь какой-то домен на уже существущий домен (например, на основной сайта). Убедитесь, что NS-сервера у паркуемого домена такие же как и у основного - того, на который паркуют. Менять NS-сервера нужно у регистратора.
У Вас эта функция может называться, например, "альяс доменов" - но суть такая же - направить все домены в одну папку.
Выберите основную дирректорию и перенаправьте туда второй сайт (может быть и больше сайтов).

После этого добавляем в config.php код
$prefix = str_replace("www.", "", $prefix);
$prefix = str_replace("-", "", $prefix);
$prefix = str_replace(".", "", $prefix);
$table_prefix = $prefix."_" ;

Что получаем - исходя из запрошенного имени сайта, конфиг подключит таблицы базы с префиксом определяемым по $_SERVER['HTTP_HOST']. Для каждого сайта будет свой комплект таблиц.

Теперь при заходе с разных URL адресов будут выбираться нужные файлы.

Да, учтите, что вход ан каждый домен в админку WP будет свой..
 
На самом деле QTranslate никакого отношения к "переводчикам" не имеет. Этот плагин позволяет сделать блог мультиязычным без необходимости строить зеркала для каждого языка... используется всего 1 инсталляция wordpress и 1 база mysql для этого.

все языки удобно заносятся в блог прямо в визуальном редакторе. я сделал один такой сайт и никогда не жалел о выборе плагина
 
  • Нравится
Реакции: Tau
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху