Tuesday, October 1, 2013

Как вести блог на двух языках

В этом блоге есть записи на двух языках: русском и английском. Часть из них дублируют друг друга как перевод; часть не переведены и есть только на одном языке.
Настройка двуязычного блога требует небольшого копания.

Главная задача - разделить две секции блога.

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

Чтобы реализовать это здесь на Blogger, вам нужно:
1. Создать ярлыки, которые определяют, к какой секции принадлежит каждая запись. Здесь это "Russian" для записей на русском, "English" для записей на английском и "bilingual post" для записей, которые есть на двух языках.
2. Создать ссылки (например на отдельном HTML-гэджете, но вообще - где хотите). У Blogger есть поисковый php скрипт с параметром q. Вот такой:
http://cafedomancie.blogspot.ru/search?q=label:somelabel
Отсюда первые два линка - тупо в лоб:
 http://cafedomancie.blogspot.ru/search?q=label:English
 http://cafedomancie.blogspot.ru/search?q=label:Russian (# Внимание - вписать в q название русского ярлыка у меня не вышло - там проблемы с кодировкой. Для целей разделения языков используйте ярлыки на английском)

Третий линк требует условных операторов и, ура, хотя блоггер их неплохо скрывает, поисковый скрипт их поддерживает.
логическое и AND это "+"
логическое или OR это "|"
логическое отрицание NOT это "-"
А также столько круглых скобок, сколько вам нужно.

Этого достаточно, чтобы соорудить третью ссылку-фильтр:
http://cafedomancie.blogspot.ru/search?q=(-label:"bilingual post"+label:English)|label:Russian
# Обратите внимание на кавычки вокруг "bilingual post". Это из-за пробела в ярлыке.

Все. Можно сделать и по-другому, например, завести два блога и кросспостить, но этот подход и удобнее, и не такой хламный.

1 comment:

  1. Спасибо! Как раз то, что искал! :)

    ReplyDelete