Переводимо шаблон wordpress на українську мову плагіном codestyling localization, блог юрия пономаренко
Начебто дрібниця, а вид псують - виглядає непрофесійно. А найголовніше - прикро, що знайти ці написи в коді і просто тупо перевести не вийде, їх там чи ні, або після переведення з'являються "кракозябри" невідомого походження і страшного вигляду. Особливо це стосується складних преміум-тем для WordPress, в простих, буває, вдається знайти оргігінал написів в коді, хоча і не завжди.
Ця проблема вже давно вирішена і створений зручний інструмент для перекладу шаблонів на будь-яку мову - це плагін CodeStyling Localization. дуже зручна штука. Зараз ми його і розберемо докладніше.
Отже, якщо у Вас встановлена тема на блозі без українського перекладу, то заходите в адмінку, в "Додатки" - "Додати новий" і в вікні пошуку пишіть назву плагіна - CodeStyling Localization. Знайдіть і активуйте його. Після цього в адмінці з'явиться новий пункт - "Інструменти" - "Локалізація". Переходьте туди.
Ви побачите сторінку зі списком усіх частин сайту, які мають різну локалізацію і які можна перевести на будь-яку мову - там і шаблони, і плагіни, і навіть сам движок WordPress ... Все це плагін знайшов сам і вивів списком - і все це ви можете переводити на будь-яку мову. Покажу на прикладі, і Ви все зрозумієте.
Підготовка до переведення шаблону
Як досвідченого зразка у мене буде фірмова буржуазна преміум-тема Avada, без українського перекладу. У списку я переходжу до неї (клікніть на картинці для її збільшення):
Як бачите, плагін CodeStyling Localization тут показує список всіх мов, які є в цій темі. До речі, для локалізації зараз в темах створюють окрему папку, де для кожної мови лежить пара файлів з розширеннями po і mo. Ці файли і містять переклад всіх написів теми на кожній мові. WordPress сам знайде потрібні і підключить потрібну мову для теми. Як бачите, української мови тут немає. Щоб він з'явився, треба створити відповідні файли. Тиснемо на кнопку "Додати нову мову". З'являється ось таке вікно (до речі - вікно спливаюче, якщо в браузері варто заборона на такі вікна, то нічого не з'явиться): Вибираємо українську мову і тиснемо на кнопку "Створити po-файл". До речі, тут хмара мов, хочете - створіть китайську або туркменську локалізацію. Знову потрапляємо в список мов, але тепер там є і український. Тепер потрібно натиснути кнопку "Сканувати" навпроти української мови - з'явиться ще одне маленьке спливаюче вікно з більш детальною інформацією, де треба ще раз натиснути кнопку "Сканувати", а потім Ви повернетеся знову до списку мов, як на скріншоті. Тепер можна натиснути кнопку "Редагувати" і перейти власне до перекладу. Зауважте, що зараз створено файл локалізації po, а файл mo поки відсутня.Творча робота - переклад шаблону
Натиснувши кнопку "Редагувати", потрапляємо в список всіх англійських написів, які плагін виявив в нашому шаблоні. Зауважте кнопку "Генерувати mo-файл". Натискати її поки не треба - зробите це після того, як перекладете потрібні написи. По суті, це кнопка збереження змін - натиснете її в кінці роботи, і переклад не збережеться. Нижче бачимо список англійських написів, а навпроти кожної - посилання "Редагувати". Ще вгорі є список сторінок - якщо всі написи не вмістилися на одній сторінці. З цим, думаю, розберетеся.
Вибираємо то, що хочемо перевести, і навпаки натискаємо "Редагувати". Все перекладати не обов'язково, можна побродити по своєму блогу і подивитися, де вилазять англійські написи. Ось, наприклад, я бачу на сайті такі негарні речі.
Знаходжу в списку ці написи і натискаю "Редагувати" біля кожної. У спливаючому вікні, де треба написати переклад. Ось наприклад: Пишемо переклад і натискаємо "Зберегти". Дві кнопки праворуч і ліворуч від неї переводять Вас до попередньої або наступної написи, не закриваючи цього вікна - якщо взятися за повний переклад, то зручно. Так само робимо і для напису "Search" в поле пошуку ...Коли переведено все, що потрібно, натискаємо кнопку вгорі "Генерувати mo-файл". Переклад зберігається в файл локалізації і можна на сайті подивитися зміни:
Думаю, так набагато краще, ніж було. Звичайно, можна багато раз знову заходити в цей список написів, більше не треба буде натискати кнопку "Сканувати" і т.п, про що йшла мова спочатку. просто не забувайте після закінчення роботи натискати кнопку "Генерувати mo-файл" і зберігати те, що напереводілі. До речі, якщо більше переводити нічого не треба, сам плагін CodeStyling Localization можна відключити - навіщо зайве навантаження на сервер ... І ще - я перекладав один шаблон на локальному сервері, але після перенесення сайту на хостинг переклад загубився. не знаю, чому так вийшло, але тому раджу переводити шаблон вже на робочому сайті.До речі, а Ви як ставитеся до набору передплатників на своєму блозі? Якщо ніяк, то обов'язково потрібно зайнятися цим якнайшвидше. Тисніть по картинці нижче і забирайте безкоштовну книгу!
Переводимо шаблон WordPress на українську мову
Переводимо шаблон WordPress на українську мову
Хороший плагін! Відмовився від буржуйських тим ще пару років назад і саме з цієї причини, що виглядає досить отстойно. Дійсно, ритися в чужому коді досить клопітка заняття, тим більше в PHP, дуже багато проблем. Тепер можна спокійно адаптувати будь-який шаблон. Дякую за статтю! Розкидав посилання по всім соц. мереж. -D
Дякую за допомогу, Михайло! Я теж кілька днів рився в коді, намагався перевести преміум-тему, та там чорт ногу зломить, і все-одно нічого не вийшло. З плагіном проблему вирішив за півгодини). Прості поки теми не пробував так перекладати, хоча підозрюю, що теж можна.
У моєму шаблоні є українська мова (як і належить) і ще кілька. Просто в українському, якщо подивитися плагіном, не всі переведено. Хоча неперекладених написів ніби й не видно ніде, але їх там є багато. Програма-то все-таки буржуазна, так що дивуватися нема чому. Видно її саму НЕ досконально перевели, генерує суміш, замість чистого перекладу. Але це не важливо, в принципі. До речі, Artisteer видає такий код, що там неможливо розібратися - я якось довго вовтузився, щоб у даті поміняти слово «at», в результаті просто видалив шматок коду, де виводиться це слово. А плагіном міг би просто переклад вставити (Але я тоді про нього не знав ...
Так, Artisteer взагалі важкувата прога, дуже багато зайвого коду з собою тягне. Якщо професійно займатися, потрібно чистити код в кожному створеному шаблоні. Добре в четвірці передбачена функція приховати цю його дурну приставку art- перед кожною позначкою, а в двійці ще і це доводилося видаляти в кожному файлі!
Все зрозуміло. У цьому шаблоні вже є українська мова і якщо перейти на редагування відразу, то нічого не з'явиться. Спочатку потрібно натиснути кнопку «Сканувати» - так треба робити в перший раз роботи з цією мовою. Після сканування теми плагін видає список всіх написів. У Вашому шаблоні вже частково є переклад - плагін справно все показує. Правда, деякі слова можна поміняти на інші - пости там називаються повідомленнями чомусь, краще вже на «статті» або «записи» поміняти. Загалом, плагін цей шаблон прекрасно сприймає і все буржуйські написи виводить =)
І ще - у мене настройки збереглися. Можливо, Ви забули зберегти зміни - натиснути кнопку «Генерувати mo-файл». Якщо натискаєте, а зміни не зберігаються, то може бути справа в тому, що файли локалізації просто заборонені для змін. Тоді просто поміняйте права доступу для папки languages в папці з темою, або хоча б для файлів RU в ній. Права змінюються, якщо в Filezilla на папці або файлі натиснути правою кнопкою і вибрати «Права доступу до файлу», там треба дозволити запис. Але це Ви отже знаєте =) Я для випробувань зробив сайт на Хостінгере і тему закинув папкою через Filezilla, так що вона спочатку мала права на запис. А ось якщо завантажувати її на хостинг іншими способами, то може бути і заборона.
Тема (Cherry) не реагує на переклад. Перекладав з допомогою Codestyling Localization, потім з Poedit. Закидав перекладені файли .po і .mo в файл lang теми і в папку languages в wp-content кореня сайту.
Міняв і привласнював в config.php WPLANG значення 'ru_RU'.
Міняв з ru_RU.po на ru.po і з ru_RU.mo на ru.mo
У темі немає папки languages. тільки папка з lang з дефолтними po і mo. Так само там немає файлу pot
Не реагує і все тут. І ця тема не перша ... Хоч убий не зрозумію в чому справа, може ви стикалися з чим подібним.