Impor file po menggunakan Drush

15

Saya memiliki sekitar 20 situs yang memiliki terjemahan umum. Saya tidak ingin masuk ke admin setiap situs setiap kali file po diperbarui.

Apakah mungkin mengimpor file po menggunakan Drush?

D. Wroblewski
sumber

Jawaban:

25

Saya menemukan cara untuk melakukan ini menggunakan Pembaruan Drush dan Lokalisasi .

  1. Instal Pembaruan Lokalisasi drush en l10n_update
  2. Konfigurasikan jalur lokal untuk file-file po (admin / config / regional / bahasa / pembaruan)
  3. Konfigurasikan pembaruan otomatis dari server jarak jauh atau hanya sumber lokal

Sekarang Anda dapat meletakkan file po Anda sendiri di jalur lokal (misalnya situs / semua / terjemahan). Jika Anda memiliki terjemahan untuk modul Anda sendiri maka beri nama sesuai dengan konvensi penamaan ini:

modulename-version.language.po

Jadi file po Swedia untuk 'my_module', versi 7.x-1.1 akan dinamai:

my_module-7.x-1.1.sv.po

Sekarang Anda telah menyiapkan semuanya dan Anda dapat mulai memperbarui terjemahan situs Anda dengan Drush:

drush l10n-update-refresh # Looks for new po-files
drush l10n-update # Updates translations
D. Wroblewski
sumber
Saya tidak bisa mendapatkan ini benar-benar berfungsi. Saya telah mengekspor terjemahan dalam file po menggunakan UI. Itu dinamai de.pountuk Jerman. Saya sudah berganti nama untuk nama modul dan ditambahkan itu versi modul saya seperti: controller-7.x-1.0.de.po. Dorong dengan git dan jalankan perintah drush. Tapi itu tidak mendeteksi file po saya yang baru saja didorong dan mengatakan 'Semua terjemahan up to date'. Di mana saya melakukan kesalahan?
Елин Й.
Anda perlu menempatkan file po di direktori yang dikonfigurasi oleh l10n_update sebagai sumber, biasanya situs / semua / terjemahan
FGM
2
Adakah yang tahu bagaimana melakukan ini di Drupal 8?
Guillaume Bois
Awas! Jika Anda ingin menggunakan metode ini untuk modul lokal khusus, file .info Anda harus memiliki projectproperti , jika tidak, modul akan diabaikan sepenuhnya.
penulis naskah
Satu detail terakhir, dengan versi 2.2, saya harus menentukan --mode=overwritesaat menjalankan drush l10n-update, jika tidak modifikasi dalam file .po saya tidak akan diperhitungkan (bahkan jika modesudah diatur ke overwritedalam backend).
penulis naskah
3

Saat ini tidak ada cara untuk melakukannya dengan Drush tetapi Anda dapat menggunakan modul Pembaruan Lokalisasi .

Anda juga dapat mencoba menggunakan Selenium IDE atau skrip Selenium jika Anda memiliki banyak situs. Ini adalah solusi terbaik yang bisa saya dapatkan untuk mendapatkan terjemahan sebagai ekspor.

  • Saya mengatakan tidak ada cara untuk melakukannya dengan Drush karena saya membuka permintaan fitur dalam masalah antrian beberapa minggu yang lalu dan ditutup sebagai "tidak akan memperbaiki" dengan alasan bahwa pengelola berpikir perintah seperti itu harus diuji dalam i18n atau modul lainnya terlebih dahulu sebelum mengintegrasikannya ke dalam trunk Drush.
Patrick Kenny
sumber
1

Taruhan terbaik Anda adalah dengan menggunakan modul Potx Exportable .

Itu memperlihatkan perintah Drush drush potx-import-all

vancho17
sumber
Selamat Datang di Jawaban Drupal! Apakah modul memiliki dukungan Drush juga? OP meminta cara untuk melakukannya dengan Drush.
kiamlaluno