13 апреля 2010

Как русифицировать шаблон WordPress. Часть 1

wordpress для чайниковСегодня в разделе wordpress для чайников поговорим о том как лучше русифицировать шаблоны.
Многие на своих блогах используют шаблоны взятые с сайтов буржунета, поскольку их разнообразие превышает по количеству, а частота обновления шаблонов выше чем в российской части интернет, да и качество шаблонов, по моему мнению, выше.
Недавно прочел в интернет статью о том, как быстро русифицировать шаблон WordPress. Хочу с вами, уважаемые читатели, поделится своим мнением по этому поводу.
Я уже выкладывал статью на тему улучшения внешнего вида ссылки more, она тоже касается русификации шаблона.
Самое первое и главное — конечно русифицировать шаблоны надо, но не нужно спешить при этом. Оговорюсь, что здесь я рассматриваю только случай самостоятельного перевода шаблона. Почему самостоятельного? Перевод сделать не так уж и сложно, но если вы обладаете возможностью заказать перевод у профи — то дело ваше, конечно.
Итак по порядку. Почему спешить не нужно:

  • Не факт, что шаблон, который вы выбрали первым вас устроит в дальнейшем и возможно через неделю, а то и две вы захотите сменить его на другой (о том как менять шаблон). А время на перевод вы потратите, причем не малое, поскольку это ваш первый подобный опыт.
  • Никакой гарантии, что перевод будет сделан качественно нет, опять же в силу отсутствия опыта.
  • Скорее всего вы сделаете лишнюю работу, поскольку будете переводить то, что потребуется вовсе убрать из шаблона.
  • вы все равно что-нибудь упустите из виду
  • не так уж много критических мест в шаблоне, который требуют немедленного перевода

Достаточно аргументов в пользу неспешного подхода к делу? Так что смело устанавливайте шаблон на сервер и начинайте наполнять сайт информацией, а по ходу дела будете переводить его.

Итак, теперь к самому переводу.
Для начала ознакомьтесь со статьей Сведения об основе шаблона WordPress для того, чтобы иметь представление как устроен скелет шаблона wordpress.

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

Для работы вам нужен редактор, поддерживающий кодировку UTF-8. Я пользуюсь Notepad2.
После установки шаблона и его активации установите виджеты используя переход по меню Дизайн->Виджеты. Поскольку у вас установлен wordpress по русски, то те надписи в шаблоне, который имеют отношение к сайдбару (а чаще всего в него устанавливаются виджеты) вы замените на русские названия, просто добавляя их в полях ввода названий.
Далее посмотрим на внешний вид главного меню блога. Видим, что страницы, которые мы создали через админку wordpress (зеленые) отображены по русски, а название главной нет.
wordpress для чайников
Это потому, что ссылка HOME расположена в шаблоне в файле header.php, а не берется из базы как названия остальных страниц.
Вот давайте для начала найдем её и приведем к виду, который бы нас устроил.
Откроем в редакторе файл header.php. Возможно, что обилие кода вас смутит, но ничего страшного, не боги горшки обжигают.
Красным я выделил открывающий тег <head> для того, чтобы вы видели где начинается заголовок (опять отправляю вас к статье Сведения об основе шаблона WordPress там показана структура открывающих и закрывающих тегов <head> и <body>):
wordpress для чайников
Теперь нам нужно найти открывающий тег <body>, после которого мы и будем искать нужную ссылку HOME. Напомню, все что выводится в окне браузера находится внутри тега <body>. Итак жмем CTRL+F и вводим body для поиска в коде. И видим код:
wordpress для чайников
Ага, все как по правилам, закрывающий </head>и открывающий тег <body> рядышком. Мы же суеверные еще, и верим — это хороший знак :) .
Осталось найти далее по тексту надпись Home. Ну теперь-то мы себя увереннее чувствуем, опять жмем CTRL+F и вводим в качестве ключа home.
И нам начинаются попадать строки подобные этим:

if(is_home() && !is_paged()): ?>

нет, не то, это вызов какой-то функции, круглые скобки на это указывают, да и название полное is_home явно сейчас не по делу.

<li class="current_page_item" id="nav-home"><a class="home fadeThis"

опять не то, тут home часть имен класса и id.
Ищем дальше:

href="<?php echo get_settings('home'); ?>

опять вызов функции, судя по названию получение установок, идем дальше

<span class="title"><?php _e('Home','mystique'); ?>

А вот, что-то другое, не похожее на предыдущие примеры. Кстати функция _e как раз отображает на экране текст, заключенный в кавычки.
Ну что, пробуем заменить Home на Главная:

<span class="title"><?php _e('Главная','mystique'); ?>

сохраняем файл, не забыв установить кодировку в UTF-8.
Копируем header.php на сервер по протоколу FTP и обновляем страницу в браузере:
wordpress для чайников

Ну вот, эксперимент удался, теперь я загнул пальцы и сделал умное лицо! Если же, что-то пошло не так, восстановите исходный файл шаблона из архива.
Это первые шаги по русификации шаблона, в следующих частях продолжим, но главный принцип понятен — он сводится к поиску включения, которое нужно заменить, а потом собственно замена.

Статьи по теме
Статья оказалась полезной? Подпишись на RSS рассылку или следуй за мной на твиттере @wpstarter или по этой ссылке wpstarter
Рубрика: песочница

Комментариев: 30

Вы можете следовать любому комментарию через RSS 2.0 feed.

Вы можете оставить комментарий или trackback с вашего сайта.

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

    Более того, оптимальнее всего самостоятельно сделать для темы .po файл и не морочить себе потом голову разного рода изменениями :) Делается это так же просто, в общем-то, как и ручной перевод.

    • admin:

      2Yaroslav.CH Спасибо за коммент.
      Обратите внимание, что материал идет по графе — wordpress для чайников.
      Я собираю вопросы именно от такой категории. Меня спросили, я помог и
      зачем сейчас морочит ему голову .po файлом.
      Ему было нужно поменять Home на Главная и все.
      Придет время и до .po файлов доберемся

  2. Согласен, я просто слегка расширил горизонт обзора :)

  3. Miha:

    Я, конечно, «чайник». Но не знал, что до такой степени. Может конечно уже ночь и я уже плохо соображаю, но с первого прочтения мало чего понял.

  4. Nel:

    А вот если русифицировать подобным образом сразу на сервере (по FTP через F4 открывать файл, изменять и сохраниять), то у меня вместо русского текста каракули. Почему?

    • Alex:

      Используйте редактор Notepad++
      Убедитесь, что кодировка файла перед началом перевода UTF-8
      ( меню кодировка->Кодировать в UTF-8 )

  5. А мне статья понравилась)))
    Я с помощью notepad++ вчера тему перевела)) при этом и немного времени получилось))), а с помощью poedit у меня ничего не вышло(((. Удачи Вам и Вашему блогу))

  6. Дмитрий:

    Yaroslav.CH:
    вы ошибаетесь ваше ро переводит только те шаблоны которые скачаны с оф сайта))) остальные нужно ручками править)))

    • Дмитрий, почитайте внимательно мой комментарий, а также информацию о переводах плагинов тем для WP, и четко будете знать, что я не ошибаюсь :)

  7. diGreez:

    А как сделать po файл?

  8. Evgeniy:

    Спасибо за хорошую статью. И за коментарий ;)

  9. Спасибо за статью. У меня укр. версия движка WP + шаблон на англ. большинство фраз вручную перевел. А вот пункт меню «Головна» название полей не могу найти где прячутся. Откріл файл heder.php (через редактор в админке— там и близко нет «Головна» или «Home»). Я бы забил на это но в глаза бросается. Может знаете чем помочь?

  10. Добрый день сообщество продвинутых блогеров!!! Я «чайник» и если мой вопрос покажется вам детским то прошу не очень смеяться. Где в какой папке искать header.php? Я не нашла, честно искала долго и упорно! Помогите!!!!

  11. к сожалению, мой файл header.php совершенно не такой и изменить в нем название страницы START на ГЛАВНАЯ не получилось. Остается уповать, что это слово понятно всем!!

  12. Здравствуйте, у меня в файле header есть следующая строка

    <a href="/»>

    Что здесь нужно поменять чтобы вместо Home была Главная ? Заранее спасибо

  13. Спасибо, это я уже сделал, вы не подскажете как на моём блоге изменить дизайн ( именно вот эту фотографию где у меня мяч и кроссовки в блоге сверху ) ? А то лажу по инету уже давно а найти не могу

  14. Макс:

    Спасибо Вам! Лучший пост на эту тему, который только можно найти!

  15. спасибо, очень полезно и понятно.
    А вот если у меня установлен только англоязычный WordPress, как мне переименовывать все эти Recent Posts, Archives и тому подобное?
    Заранее спасибо!

  16. blog:

    Спасибо огромное, намучился с этим вордпресом.
    Капча у вас прикольная

  17. Валерий.:

    Здравствуйте, Админ!
    Поменять «Home» на «Главная». Получилось. Поменять под статьями «Comments» на «Комментарии» и пр. мелочи — не получается.
    Просмотр кода элемента показывает все те строчки кода, где их можно изменить, Но в самих файлах темы этих строчек нет.
    Может быть что-нибудь подскажете?
    Заранее благодарен.
    К сожалению нельзя прикрепить архив с Темой.

Оставьте комментарий

Обведите фигуру по линии:

Ставим WordPress на локальном копьютере