Начиная вести свой блог, я твердо решила никогда не писать обзорных статей о плагинах к WordPress. На это было несколько причин: во-первых об этом и без меня достаточно пишут, во-вторых, разобраться с плагином сможет практически любой пользователь. Да и к тому же, меня не особо интересовала эта область. Но правила на то и существуют, чтобы их иногда нарушать.
Многих владельцев блогов, спустя некоторое время, посещает мысль о расшрении аудитории своего ресурса. Итак, если вы считаете, что русскоязычных читателей вам уже не достаточно, и пришла пора локализовать ваш блог на другой язык, то эта статья предназначена специально для вас.
Установка плагина
Для того чтобы добавить дополнительные языки для нашего блога, мы будем использовать плагин WPML Multilingual CMS, который позволяет не только русифицировать все тексты на сайте, но и перевести шаблон, а также элементы навигации. Так что с его помощью, мы сможем создать, полноценный сайт на разных языках. Он гарантированно работает до версии wordpress 2.8.4, но обязательно потребует наличие PHP5 на вашем сервере. Итак, скачиваем плагин, устанавливаем его, как обычно (распаковываем в папку wp-content/plugins) и активируем.
После активации плагина, в панели управления появится дополнительный блок управления плагином WPML:
Перейдите на вкладку Overview в блоке WMPL, здесь вам понадобится установить первоначальные настройки. Вы увидите две группы настроек, содержащие несколько разных секций. Мы не будем сейчас останавливаться на них подробно, в данный момент нас интересует первая секция под названием Languages. Здесь вам понадобится назначить доступные для сайта языки. Нажимайте кнопку «configure languages»:
Сначала нужно указать основной язык сайта – тот, на котором он отображается по умолчанию. Поскольку наш блог по умолчанию русскоязычный – мы выбираем его в качестве умолчания, а вторым языком указываем английский.
На этой же странице, можно сразу встроить в сайдбар (если он есть в вашей теме) переключатель языка, выполненный в виде выпадающего меню. Давайте, на время активируем его у нас в сайдбаре, чтобы проверить работоспособность блога, позже мы вернемся к переключателю, и сделаем его более интересным.
Локализация контента
Итак, вышеприведенных шагов достаточно, для того, чтобы можно было создавать записи уже на двух языках. В нашем примере, у нас уже есть традиционная запись «Привет, мир», с русским текстом. И если вы все сделали правильно, вот так будет выглядеть вкладка «Редактировать записи», в Панели управления:
Кнопка в виде плюса, одновременно сообщает нам, что запись еще не переведена на английский язык, и позволяет добавить перевод. Нажав на нее, вы увидите обычную форму добавления новой записи, за исключением небольшого блока “Language” слева, этот блок будет информировать вас о текущем языке и переводе к записи.
Здесь можно смело переписать нашу запись на английском языке. Я использовала для перевода, переводчик Google, поэтому за качество не ручаюсь.
После того как вы опубликуете запись (версию перевода нужно точно также публиковать как и оригинал статьи), в панели редактирования записей, вместо значка плюса, появится иконка карандаша, с помощью которой можно всегда отредактировать ранее созданный перевод.
Теперь, можно полюбоваться на полученный результат, вот так выглядит оригинал статьи в моем блоге:
А если воспользуемся переключателем, то он загрузит нам эту же версию страницы, но на английском языке:
Страницы локализуются точно также, я добавила одну страницу «о блоге»:
и ее локализованный вариант «about»:
Обратите внимание, что в английском варианте, рядом со ссылкой «главная», появилась надпись «No categories». Это потому, что я пока не добавила перевод рубрики «новости», в панели управления рубриками. Сделать это очень просто. Заходите на страницу редактирования рубрики, и в блоке language нажимаете ссылку add:
А дальше по аналогии с записями, добавляете английское название и сохраняете. Затем нужно отредактировать наш перевод, для того, чтобы назначить ему новую рубрику. Точно также как рубрики, локализуются метки записи, я не буду на этом отдельно останавливаться, думаю, вы вполне разберетесь самостоятельно.
Локализация комментариев
WPML предлагает весьма интересную схему локализации комментариев, которую проще всего будет объяснить на примере.
Представьте себе, что вы написали небольшую статью на русском языке, а затем перевели ее на английский.
Эту статью прочитала одна из ваших читательниц, и оставила комментарий на английском языке:
Когда вы зайдете в Панель управления, вы обнаружите новый комментарий, но не на английском языке, для вас он будет переведен на русский:
Вы ответите комментатору на русском языке:
А ваш ответ, добавится на английском языке.
То есть фактически, вы можете говорить с читателями на их родном языке.
Как же это происходит?
Все довольно просто, когда пользователь оставляет комментарий на английском языке, WMPL отправляет его к автоматическому переводчику Google, это работает очень быстро и бесплатно. Конечно, никто не гарантирует вам абсолютной точности перевода, именно поэтому эта услуга бесплатная, вы получаете машинный перевод, чтобы просто уловить смысл комментария.
С другой стороны, когда вы публикуете ответ пользователю, ваш ответ может быть переведен профессиональным переводчиком, и будет звучать так, как будто вы на самом деле владеете иностранным языком. И вот за эту услугу, уже придется заплатить, эта услуга стоит около 0.07$ за слово.
Для того чтобы активировать локализацию комментариев, вам понадобится отметить соответствующие пункты в меню WPML – comments translations, а также зарегистрироваться в сервисе ICanLocalize, что можно сделать прямо из панели администрирования в разделе WPML – Pro translation:
Локализация темы
Приступаем к очень важному шагу – локализации шаблона. Возможно, кому-то покажется, что это уже лишнее, локализованного контента вполне достаточно, но все же, пока ваш сайт будет содержать непонятные надписи для иностранных посетителей, его нельзя будет называть по-настоящему многоязычным.
Процесс перевода шаблона может быть как долгим и мучительным, так и очень простым – все зависит от выбранного вами шаблона. Если вашу тему делал профессиональный разработчик – то он, скорее всего, позаботился о том, что возможно кому-нибудь захочется перевести ее на другой язык. Но практика показывает, что зачастую разработчики шаблонов об этом не беспокоятся.
Хорошим примером, здесь могут служить темы, входящие в состав WordPress, по умолчанию. А определить готов ли ваш шаблон к переводу очень просто: достаточно взглянуть на то, как оформлены текстовые строки, такие как: «автор», «комментарии», «читать далее» и другие. Если вы видите обычный текст, без использования php-функции gettext
, то вам не повезло – и придется добавлять ее вручную.
WPML предлагает два способа перевода шаблона, с помощью готового .mo
-файла или вручную, с помощью плагина, но независимо от выбранного способа локализации, вам прежде всего нужно все-все текстовые строки шаблона заключить внутрь функции gettext
. Например, строчку «Автор», идущую перед именем автора, следует записать так:
<?php _e('Автор'); ?>
А текст, выводящийся в php-функциях, например, надпись «Редактировать», следующим образом:
<?php edit_post_link(__('Редактировать') ); ?>
Более подробно о локализации темы, можно прочитать в моей предыдущей статье. После того как вы обработаете все текстовые строки вашего шаблона вышеуказанным способом, можно переходить к непосредственному переводу.
Перевод темы с помощью плагина
Итак, переходим на страницу WPML – Theme Localization, и указываем, что мы будем переводить тему с помощью WMPL:
Все очень просто, после того, как мы заключили все текстовые строки шаблона в функцию gettext
, нажимаем кнопку «Scan the theme for string», и плагин просканирует все файлы темы, найдет строчки, которые нужно перевести, и отобразит их в таблице, выше.
После того, как вы увидите найденные строки, нажимайте кнопку «View strings that need translation», и добавляйте по очереди перевод для каждой строки:
Вообще-то, предполагается, что плагин может просканировать все текстовые строки, и без заключения их в функцию
gettext
. Но на практике это работает не так хорошо, как хотелось бы. Во-первых, сканируются не все текстовые строки, а во-вторых, после добавления перевода к найденным словам, при переключении языка, он так и не отобразился. Поэтому, я все же рекомендую потратить, немного времени на приведение вашего шаблона в правильный вид.
Этот процесс не займет много времени, зато результат будет отличный – полностью локализованная тема.
Перевод темы с помощью файла .mo
Многие темы WordPress поставляются уже переведенными на разные языки. Если вам повезло, и вы обладатель такой темы – вы можете использовать уже готовый перевод, вместо того, чтобы мучиться самому.
Чтобы использовать перевод с помощью файла .mo
, выберите пункт «Using a .mo file in the theme directory». Все, что вам потребуется указать – это название текстового домена для вашей темы.
Как я уже упоминала, когда тема создается правильно, все текстовые строки заключены в вызов функции gettext
. Каждый вызов этой функции содержит два аргумента – строку, которая должна быть переведена, и второй аргумент, под названием Текстовый домен. Этот второй аргумент определяет, что все текстовые строчки темы, принадлежат ему. Вам нужно будет ввести значение текстового домена в соответствующем поле, чтобы WPML мог загрузить необходимый файл с переводом.
Оформление переключателя
Итак, мы получили полностью локализованную версию блога на английском языке. Единственное, что меня не устраивает в нашем результате, это вид переключателя языка. К тому же, я хочу самостоятельно выбрать место для расположения переключателя, не ограничиваясь сайдбаром. К счастью, разработчики плагина предоставили нам возможность, самостоятельно создать переключатель языков, и использовать его в любом месте нашего шаблона.
Для начала давайте уберем существующий переключатель языков, это делается в меню WPML – Languages
Выбираете из списка none, и сохраняете.
Получение списка доступных языков
Функция icl_get_languages()
используется для получения списка переводов для любой страницы. Пример использования:
icl_get_languages('skip_missing=N')
Параметр skip_missing
говорит функции, как выводить языки, не имеющие перевода. Вы вернемся к нему, чуть позже.
Эта функция возвращает массив с определенным набором элементов, для каждого языка. Например, для WordPress-сайта, запущенного на Английском, Французском и Итальянском, массив будет выглядеть следующим образом:
Array ( [0] => Array ( [active] => 1 [native_name] => English [translated_name] => English [language_code] => en [country_flag_url] => http://yourdomain/wpmlpath/res/flags/en.png [url] => http://yourdomain/about ) [1] => Array ( [active] => 0 [native_name] => Français [translated_name] => French [language_code] => fr [country_flag_url] => http://yourdomain/wpmlpath/res/flags/fr.png [url] => http://yourdomain/fr/a-propos ) [2] => Array ( [active] => 0 [native_name] => Italiano [translated_name] => Italian [language_code] => it [country_flag_url] => http://yourdomain/wpmlpath/res/flags/it.png [url] => http://yourdomain/it/circa ) )
Каждый язык имеет свой собственный массив параметров, который можно использовать в функции шаблона для построения переключателя любого вида.
- active: Это текущий активный язык (только один язык является активным)
- native_name: Имя языка (не переводится)
- translated_name: Имя языка, переведенное на текущий, активный язык
- country_flag_url: URL PNG-картинки в виде флага, отображающей язык
- url: Ссылка на перевод, выполненный на этом языке
Обработка отсутствующих переводов
Некоторые из страниц могут быть не переведены на другие языки. Вы можете указать функции icl_get_languages
что именно нужно возвращать для языков, не имеющих перевода.
Если указать ’skip_missing=1′
, эти языки просто не будут выводиться. Если значение параметра skip_missing
, установить в 0
, будут выведены все доступные языки сайта.
Использование функции в шаблоне
Вы можете построить собственный переключатель языков, абсолютно любого вида. Далее, представлены два популярных решения.
Примеры PHP-функций, представленных ниже, должны быть распложены в файле functions.php (который расположен в папке с темой).
Предположим, вы хотите добавить строчку внизу (или вверху) каждой записи, информирующую пользователя, что эта запись доступна, также, на других языках. Приведенная ниже функция вернет только существующие переводы текущей записи, а если перевода на другие языки нет, то ничего не вернет.
function icl_post_languages(){ $languages = icl_get_languages('skip_missing=1'); if(1 < count($languages)){ echo __('Эта запись также доступна на следующих языках: '); foreach($languages as $l){ if(!$l['active']) $langs[] = '<a href="'.$l['url'].'">'.$l['translated_name'].'</a>'; } echo join(', ', $langs); } }
Что делает функция:
- Получает список языков от WMPL —
$languages = icl_get_languages(’skip_missing=1′);
- Проверяет, доступен ли перевод для текущей записи —
if(1 < count($languages))
- Создает вывод, пропуская активный в данный момент язык —
if(!$l['active'])
.
Обратите внимание:
- Сообщения заключены в функцию
gettext
. Это очень важно, поскольку это сообщение, добавленное к каждой записи, будет отображаться на правильном языке —__(‘Эта запись также переведена на:’);
- Имена языков выводятся на основе переведенных названий. Это гарантирует правильное отображение имени языка:
$l['translated_name']
Вот такой у нас получился результат:
Чтобы включить это сообщение в каждую запись, добавьте вызов функции icl_post_languages()
, в файле single.php.
<?php icl_post_languages(); ?>
Список языков с флагами
Рассмотрим еще один вид переключателя языков – список названий языков с соответствующими флагами. Такой переключатель обычно располагается в подвале многоязычного сайта, но вы можете расположить его где угодно.
function languages_list_footer(){ $languages = icl_get_languages('skip_missing=0'); if(!empty($languages)){ echo '<div id="footer_language_list"><ul>'; foreach($languages as $l){ echo '<li>'; if($l['country_flag_url']){ if(!$l['active']) echo '<a href="'.$l['url'].'">'; echo '<img src="'.$l['country_flag_url'].'" height="12" alt="'.$l['language_code'].'" width="18" />'; if(!$l['active']) echo '</a>'; } if(!$l['active']) echo '<a href="'.$l['url'].'">'; echo icl_disp_language($l['native_name'], $l['translated_name']); if(!$l['active']) echo '</a>'; echo '</li>'; } echo '</ul></div>'; } }
Эта функция выполняет следующее:
- Если существует хотя бы один перевод, создает DIV и открывает внутри него маркированный список
- Просматривает каждый язык и добавляет его в список
- Если текущий язык не является активным в данный момент, также добавляет ссылку на страницу с этим языком
- Добавляет флаг для языка
- Добавляет оба названия языка, настоящее и переведенное, если они отличаются
Кроме самой функции, нам понадобится добавить немного CSS, для нормального отображения нашего списка языков:
#footer_language_list{ margin-bottom: 25px; text-align: center; } #footer_language_list ul{ list-style: none; margin:0; padding:0; } #footer_language_list ul li img{ margin-right:5px; } #footer_language_list ul li{ display:inline; margin:0 5px 0 5px; padding:0; } #footer_language_list ul li a, #footer_language_list ul li a:visited{ color: #000; text-decoration:underline; } #footer_language_list ul li a:hover, #footer_language_list ul li a:active{ color: #000; }
В результате у нас получился вот такой переключатель:
Чтобы добавить его в свою тему, добавьте вызов функции languages_list_footer
, в файле footer.php (или в любом другом месте вашего шаблона) следующим образом:
<?php languages_list_footer(); ?>
Обратите внимание: вы легко можете изменить горизонтальный переключатель языков, на вертикальный. Просто удалите из CSS строчку
display: inline
.
Заключение
Как видите, с помощью плагина WPML, сделать блог многоязычным под силу любому пользователю. В статье приведен краткий обзор плагина, но всегда вы можете узнать больше на официальном сайте WPML.
Есть ещё два адекватных плагина, у которых принципиально другой подход. Вот краткое описание их работы.
Странно, но ссылки у тебя никак не выделяются, т.е. захочешь — не найдешь. В предыдущем моем комментарии ссылка на слове «Вот».
вроде бы подчеркиванием выделяются
На третьей мозиле никакого подчеркивания нет.
Спасибо за статью!
Работает или нет — пока не знаю, не пробовал, но написано толково.
А как добавить язык не из списка?
Вам нужно добавить язык, которого нет в списке Site Languages?
Да, казахский язык
а как быть с большими вставками текста, Theme Localization их не берет, находит, но отказывается отображать разные переводы, короткие слова отображает, а большие куски текста нет, как можно решить эту проблему, не подскажите? )
Расскажите подробнее, плагин их находит, вы добавляете перевод а он его не отображает?
именно так. После сканирования, строки находятся, я делаю перевод, комплит, с маленькими строками все ОК, перевод отображается, а с большими на 3-4 предложений вместо перевода, отображается на родном языке. Я пока получаю текущий язык и через if вывожу нужную мне строку. но конечно хотелось бы через админку.
А текст заключен в функцию
gettext
? Или он слишком большой?Да, и спасибо большое за статью, она великолепна )
Спасибо за толковое объяснение, как раз собирался сделать на вордпрессе 2язычную версию своего сайта.
Подскажите где искать вкладку «WPML – Theme Localization»
в менюшке WPML , только два пункта:
Languages и Pro translation
хм.. вообще меню WPML должно быть такое как на скриншоте, может вы еще не добавили язык?
установил плагин, и он дыл уже такой. Сейчас выбрал статьи, оформил две страницы и две записи. Меню без тем. Может скачать плагин заново, киньте ссылку плиз
переустановил_ ничего, может скитьте ссылку адреса из админки
Если вам это поможет то: http://имя_вашего_блога/wp-admin/admin.php?page=sitepress-multilingual-cms/menu/theme-localization.php
Обновил WP до 2.8.6 — переустановил плагин — все тоже, только два пункта.
Перешол по сслыке — wp-admin/admin.php?page=sitepress-multilingual-cms/menu/theme-localization.php
Сообщение- «Вы не имеете достаточно прав для доступа к данной странице.»
Зашел на фтп — файл есть theme-localization.php с правами как и все.
все готово — дело все в кнопочке «Go advanse» которая горела в верху меню, под кнопкой «Выход». нажал на ее и меню стало как и должно.
А что делать, если плагин (русская версия) отключает полностью все записи?
WPML отключает все записи?
Давно хотел перевести свой блог и на украинский
Скажите, а где конкретно нужно писать «display: inline.», хочу, чтобы переключение языков было в строчку а не выпадающее. Спасибо.
Для того чтобы вывести языки в строчку, сделайте так, как написано в абзаце Список языков с флагами
1. Вставляю код в футер.
2. Редактирую файл CSS — а какой конкрентно? Которые в Editor или какой?
Можно основной style.css темы.
Спасибо за оба поста по поводу локализации. Все получилось, но остался один вопрос. Использую тему, которая «пролистывает» статьи как на этом блоге «интересные статьи» и имеет слайдер с картинками к постам. Стандартная настройка темы позволяет выбрать 1 категорию для «пролистывания» статей и одну для картинок. Намекните, пожалуйста, что можно сделать для того, чтобы в разных локализация «пролистывались» соответствующие версии. Сейчас в базовой локализации все в порядке, а вторая просто не «пролистывает» ничего.
Сложно вот так сходу ответить на ваш вопрос, я не знаю как именно была сделана ваша тема. Скорее всего в ней предусмотрено пролистывание записей только из одной определенной рубрики, а вы как я понимаю, добавили вторую англоязычную рубрику?
Да-да. Так и есть. Есть «Портфолио» я добавила его перевод «Portfolio» и по факту появилась еще одна англоязычная рубрика.
Я так понимаю, что без «хирургического вмешательства» в тему не обойдется. Когда решим этот вопрос, я тут напишу.
Если вы что-то придумаете, буду благодарна :-)
http://topwpthemes.com/imag/ — вот тут можно скачать тему, которая устроена подобно моей.
У меня задача добавить язык в уже существующий блог. По умолчанию, посты на русском попадают в англ. версию. А при попытке вручную перенести, пропадают комментарии.
А как вы пытаетесь переносить их вручную? Насколько я понимаю, вам нужно просто добавить перевод для каждой записи, и тогда в английскую версию попадут ваши переведенные статьи.
У меня есть посты на русском. Для англ. я хочу писать вручную свои посты, просто в англ. разделе они будут. Главная проблема, все посты написанные уже на русском находятся под британским флагом после установки плагина :), т.е. в англ. версии. И как это поменять ума не приложу.
То есть ваши английские статьи не будут переводами уже существующих статей, а будут самостоятельными постами?
Могут быть, но будем переводить вручную, или будут другими по содержанию. Т.е. будет и так и так.
Я поняла вас, но единственный известный мне спосб убрать русские записи из английского режима — это добавить их перевод в окне редактирования. Возможно WPML не вполне подходит для вашей задачи.
возможно проблема в том, что английский назначен языком по умолчанию, поэтому посты под британским флагом?
Да! Как это исправить?
Перейдите на вкладку Overview в блоке WMPL (в самом начале поста — это с картинками), там есть кнопка «configure languages» (см. 2-ю картинку к посту).
Если написано «Английский (default)», то проблема в этом. Тогда надо под «Русский» нажать кнопку «Change default language», и установить языком по умолчанию русский.
Сделал. Но в этом случае, все посты которые были, пропали. Т.е. их не видно.
Кодировка, видимо, если не видно постов. Хотя как не видно? Их просто нет или они невидимые?
И о каментах тот же вопрос — их нет в принципе или не видно?
Самое простое ссылку на блог дайте.
Спасибо большое за очень познавательную статью! Наверное, перейду на Multilingual c Global Translator (последний создает просто безумное количество перекрестных переводов). Скажите, а с разделением на разные RSS-потоки в Multilingual все просто? Или нужно вставлять в шаблон какой-то код? Не хотелось бы загружать русскоязычных RSS-подписчиков англоязычными переводами…
Блин, ну что за невезуха. Всегда задаю настолько сложные вопросы, что никто не может ответить…
На сайте плагина пишут, что с разделенем потоков все в порядке.
Обычный рсс блога выглядит так:
http//dreamhelg.ru/feed
А его локализованная версия, скажем английская, выглядела бы так:
http//dreamhelg.ru/en/feed
Спасибо большое!
И еще при импорте постов при включенном WPML пропали комментарии.
Еще одна проблема, остальные вроде решились. У меня посты уже есть, я устанавливаю плагин, и исчезают комментарии к постам. Что делать? Спасибо.
Вот блог: http://farplanet.cn/
Коммент в последнем посте, это я после поставил. А старые все невидимые (их не стало) стали после включения WPML, но после отключения WPML они возвращаются.
Спасибо!
Здравствуйте. Меня интересует вот такая возможность:
На сайте установлен WMPL плагин.
Нужно сделать запрос для вывода постов (записей) только на том языке, который в данный момент выбран.
Например, есть дефолтный виджет «Новости» (WP_Widget_Recent_Posts) — он выдает, в зависимости от выбранного языка. Значит, сделать такое возможно.
У меня установлен один плагин, который вызывает из БД записи следующим образом:
$request = "SELECT ID, post_date, post_title, post_excerpt FROM $wpdb->posts WHERE post_status = 'publish' ";
Я пыталась составить что-то вроде:
$request = "SELECT ID, post_date, post_title, post_excerpt FROM $wpdb->posts wp, wp_prefix_icl_languages_translations icl WHERE
wp.ID = icl.id AND wp.post_status = 'publish' AND icl.language_code = '".$this_lang."' ";
Но для этого надо еще определить $this_lang — да и сам запрос вряд ли корректен.
Можете помочь?
Спасибо за хороший пост! Есть вопрос, можете помочь? Мне необходимо чтобы текстовый виджет тоже переводился, т.е. возможно ли это? Если да то как…
Спасибо! С помощью вашей заметки за час выставил переключатель в правом верхнем углу. Как и нужно было. Успехов Вам! ) РГ
Ольга, а не подскажете, как или где можно убрать дублирование название языка на текущем (активном) языке — то что в скобочках в паре «English (Английский)». То есть я хочу оставить только «English», убрав русскобуквенного дублера. Буду благодарен )
РГ
Все, разобрался! :) Благодарю еще раз.
Ольга спасибо за полезную информацию, тема актуальна так как русскоязычный интернет это всего лишь три процента от всего мирового интернета. Так же если делать импорт интеренсых статей из рунета в буржунет, можно ожидать неплохих результатов, о которых даже сам не думал:)
Спасибо за статью…все очень хорошо написано…но один вопрос все же возник…
планирую сделать сайт на 2х языках с покупкой 2х доменов в зоне ru и зоне com..между собой их связать через алиас…вопрос в следующем…как сделать что бы при заходе на домен.com текст выводился на английском языке а при заходе на домен.ru на русском?
спасибо за статью
Да никак, плати деньги и тебе сделают.
Привет. Поставил плагин на сайт, но почему-то когда включен русский язык категории и страницы пишутся как categories и pages. В чем может быть дело?
Установил WPML Multilingual CMS, с переводом страниц и заметок разобрался, а вот с переводом текстовых переменных не могу. Сканирую, нажожу нужное слово, пишу для него перевод нажимаю готово, но *.po и *.mo файл с переводом не появляется. Что надо настроить, чтоб эти файлы создались ?
У меня проблема, все работает кроме главной страницы, включен в постоянных ссылках = «произвольно /%postname%/», в .htaccess
вот
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
Options +FollowSymLinks
RewriteCond %{HTTP_HOST} ^www.hostelmar.ru$ [NC]
RewriteRule ^(.*)$ http://hostelmar.ru/$1 [R=301,L]
# END WordPress
сам сайт вот http://hostelmar.ru/?lang=de
все страницы открывает а главную не видит при отключении «постоянных ссылок» начинает работать.
Помогите )?
Здравствуйте, помогите пожалуйста, у меня в панели «Записи» не отображается плюсик, то есть нет возможности добавить вручную перевод статьи. В чём может быть проблемма?
Я так поняла у меня в плагине отсутствует WPML’s Translation Management — WPML, то есть менеджер-переводчик. Поэтому я не могу добавлять переводы вручную, плюсиков нет. Скажите пожалуйста, где его можно скачать бесплатно? На сайте разработчика он стоит 79 долларов.
Статья хорошая. На днях буду пробовать локализацию. Потом отпишу проблемы и их решение.
Свасибо за статью Долго искал данный материал . буду тестировать
Подскажите, пожалуйста,
что делать: часть виджетов блога не появляются в меню перевода строк. Соответственно, невозможно их перевести и они пишутся только на одном языке. Как можно это исправить?
Подскажите пожалуйста что такое за проблема, скачиваю версию WPML 2.0.4.1 при активации пишет фатальная ошибка, скачиваю версию 1.1.0 она активируется нормально, но вот язык по умолчанию не видит и под в кладкой — Configure Languages вот такие вещи — ————————-
Currently configured languages:
Warning: join() [function.join]: Invalid arguments passed in /home/u709660220/public_html/mhostel/wp-content/plugins/sitepress-multilingual-cms/menu/overview.php on line 52
Что это вобще такое? и в чем дело? разъясните пожалуйста а то уже прям незнаю что и делать, вроде бы ничего не менял
Дмитрий, а у вас какой WordPress установлен? Версия WPML 1.1.0 , судя по всему, работает до 3-й версии, у меня прекрасно себя чувствует на WordPress 2.9.2 например.
А в последних версиях вордпресса вообще не активируется — то есть да, не видит различные языки.
Да к сожалению у меня наверное стоит последняя версия, но это никак нельзя исправить?а есть ли какой нибудь заменитель по типа WPML? есть ли такой плагин который переводит все в сайте даже шаблон и заголовок сайта?и виджеты
Спасибо за статью. Все работает нормально, но никак не могу сообразить, как сделать кнопку «Главная» мультиязычной. В принципе в редакторе можно переименовать на «Home», но сайт четырехязычный, возникнут неудобства. Есть возможность справиться с задачей?
Здравствуйте!
Очень развёрнуто и подробно написано. Спасибо!
Скажите пожалуйста, правильно ли я понимаю, что при использовании этого плагина достаточно одного «ядра» WordPress? То есть, если есть уже установленный и работающий WordPress, сайт отлажен и работает на одном языке, не нужно устанавливать ничего кроме плагина? А база данных используется одна?
Судя по официальному сайту плагин платный http://wpml.org. Стоит ли он своих денег? Не разработали ли бесплатных _таких_же_удобных_ аналогов?
Спасибо.
Всем привет.
Немогу никак реализовать отображения текста в зависимости от языка. У меня на сайте 2 языка, рус и англ.
Делаю примерно так:
if ($lang == ‘ru’){
echo «bla bla bla»;
}else{
echo «bla2 bla2 bla2»;
}
Но ничего не получается.
Пользуюсь плагином WPML.
Помогите плиз.