Drush kullanarak po dosyalarını içe aktarma


15

Ortak bir çeviriye sahip yaklaşık 20 sitem var. Po dosyası her güncellendiğinde her sitenin yöneticisine girmek istemiyorum.

Drush kullanarak bir po dosyası almak mümkün mü?

Yanıtlar:


25

Drush ve Localization Update'i kullanarak bunu yapmanın bir yolunu buldum .

  1. Yerelleştirme Güncellemesini Yükle drush en l10n_update
  2. Po dosyaları için yerel bir yol yapılandırma (admin / config / bölge / dil / güncelleme)
  3. Uzak sunuculardan veya yalnızca yerel kaynaklardan gelen otomatik güncellemeleri yapılandırma

Artık kendi po dosyalarınızı yerel bir yola koyabilirsiniz (örneğin, siteler / tümü / çeviriler). Kendi modülünüz için çevirileriniz varsa, bunu bu adlandırma kuralına göre adlandırırsınız:

modulename-version.language.po

Yani 'my_module' için İsveççe bir po-dosyası, sürüm 7.x-1.1 şu şekilde adlandırılır:

my_module-7. x-1.1.sv.po

Artık her şeyin kurulumuna sahipsiniz ve sitelerinizin çevirisini Drush ile güncellemeye başlayabilirsiniz:

drush l10n-update-refresh # Looks for new po-files
drush l10n-update # Updates translations

Bu gerçekten işe yaramadı. Kullanıcı arayüzünü kullanarak bir po dosyasında çevirileri dışa aktardım. de.poAlmanca olarak adlandırıldı . Benim modülleri isme olarak değiştirdi ve bu gibi benim modülünün sürümünü eklenen ettik: controller-7.x-1.0.de.po. Git ile itti ve drush komutlarını çalıştırdı. Ancak yeni aktarılan dosyamı algılamıyor ve 'Tüm çeviriler güncel' yazıyor. Nerede yanlış yapıyorum?
Елин Й.

Po dosyasını l10n_update tarafından kaynak olarak yapılandırılan dizine, genellikle siteler / tümü / çevirilere yerleştirmeniz gerekir
FGM

2
Bunu Drupal 8'de nasıl yapacağınızı bilen var mı?
Guillaume Bois

Dikkat et! Özel yerel modülleri için bu yöntemi kullanmak istiyorsanız, .info dosya olması gerekir projectözelliği aksi modül tamamen göz ardı edilecektir.
yazı yazarı

Son bir ayrıntı, 2.2 sürümü ile, --mode=overwriteçalışırken belirtmek zorunda kaldım drush l10n-update, aksi takdirde .po dosyamdaki değişiklikler dikkate alınmaz ( arka uçta modezaten ayarlanmış olsa bile overwrite).
yazı yazarı

3

Şu anda bunu Drush ile yapmanın bir yolu yok, ancak Yerelleştirme Güncelleme modülünü kullanabilirsiniz.

Çok fazla siteniz varsa Selenium IDE'yi veya bir Selenium komut dosyasını kullanmayı da deneyebilirsiniz . Bu, çevirileri dışa aktarılabilir hale getirmek için ortaya koyabildiğim en iyi çözümdür.

  • Drush ile bunu yapmanın bir yolu olmadığını söylüyorum, çünkü birkaç hafta önce sorun sırasında bir özellik isteği açtım ve koruyucular böyle bir komutun test edilmesi gerektiğini düşünmesi nedeniyle "düzeltilmeyecek" olarak kapatıldı i18n veya diğer modülleri, önce Drush bagajına entegre etmeden önce.


1

En iyi seçeneğiniz Potx Exportable s modülünü kullanmaktır.

Drush komutunu ortaya koyar drush potx-import-all


Drupal Cevaplarına Hoşgeldiniz! Modülde Drush desteği de var mı? OP, Drush ile bunu yapmanın bir yolunu istiyor.
kiamlaluno

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.