.Po फ़ाइलों का उपयोग करके एक प्लगइन का अनुवाद करें


34

मैं इस प्लगइन का अनुवाद करना चाहता हूं ।

प्लगइन को पहले से ही अन्य भाषाओं में अनुवादित किया गया है और इसमें .potनई भाषाओं को जोड़ने के लिए फाइलें हैं (जहां तक ​​मुझे विवरण से समझा गया है)।

मैं अपनी नई भाषा के लिए कैसे बनाऊं .poऔर कैसे बनाऊं और .moउन्हें सुलभ बनाया जाए ताकि प्लगइन द्वारा उपयोग किया जा सके? मैंने अपनी wp-config.phpफाइल में रूसी भाषा को परिभाषित करने की कोशिश की है , नीचे परिभाषा डालकर:

define ('WPLANG', 'ru_RU');

जवाबों:


43

संपादक

अन्य हैं, लेकिन यह सबसे अधिक उपयोग किया जाता है: पोएडिट , एक क्रॉस-प्लेटफॉर्म गेटटेक्स्ट कैटलॉग (.po फाइलें) संपादक।

प्रारूप

  • .moमशीन ऑब्जेक्ट के लिए खड़ा है
    - वर्ड .poद्वारा उपयोग किया जाता है जो फ़ाइल का संकलित निर्यात
  • .poपोर्टेबल ऑब्जेक्ट के लिए खड़ा है
    - अनुवाद स्ट्रिंग के साथ संपादन योग्य पाठ फ़ाइल
    - मास्टर .potफ़ाइल पर आधारित , पॉट फ़ाइल से अपडेट का उपयोग करके PoEdit फ़ंक्शन
    - कुछ लोग इसे मास्टर फ़ाइल के रूप में वितरित करते हैं, लेकिन इसका उपयोग केवल अनुवाद के लिए किया जाना चाहिए
  • .potपोर्टेबल ऑब्जेक्ट टेम्प्लेट के लिए खड़ा है
    - संपादन योग्य पाठ फ़ाइल जिसका उपयोग वर्डप्रेस और थीम और प्लगइन्स के सभी ट्रांसलेटेबल स्ट्रिंग्स को हथियाने के लिए किया गया है, जो स्रोत PoEdit फ़ंक्शन से अपडेट का उपयोग कर रहा है

प्रक्रिया

  • .Pot फ़ाइल को डुप्लिकेट करें और उसका नाम बदलें plugin-basename-lang_COUNTRY.po
  • संदर्भित प्लगइन मामले के लिए उदाहरण: - pt_BR का अर्थ है पुर्तगाली ब्राज़ील, लेकिन कई भाषाओं में देश भिन्नता नहीं है ... - आपको अपनी भाषा के साथ भरना होगाsubscribe-reloaded-pt_BR.po

  • WPLANGwp-config.phpफ़ाइल में आपकी भाषा में सेट होना चाहिए, जैसे,pt_BR
  • हर बार जब आप .poफ़ाइल को सहेजते हैं , तो PoEdit स्वचालित रूप से एक .moफ़ाइल उत्पन्न करता है, जो कि एक वर्डप्रेस का उपयोग करता है और मूल रूप से केवल वही है जिसे आपको अपलोड करने की आवश्यकता है

टिप्पणियों

  • यदि आप एक पूर्ण या एक सभ्य आंशिक अनुवाद करते हैं, तो इसे प्लगइन लेखक को भेजें ताकि वह इसे रिपॉजिटरी में शामिल कर सके और आपको इसके लिए विश्वसनीय हो
  • अपने अनुवाद का बैकअप बनाना न भूलें, क्योंकि यदि आप प्लगइन को अपग्रेड करते हैं तो आपकी फ़ाइल खो जाएगी
  • @ user17078 प्लगइन सुझाव काफी अच्छा है, लेकिन मैंने कभी इसका ज्यादा इस्तेमाल नहीं किया

1
नए मो / पो फ़ाइल को प्रभावी होने में कितना समय लगता है?
निमो

8

आप इस कोडाईलिंग-स्थानीयकरण प्लगइन की कोशिश कर सकते हैं :। आप इसका उपयोग करके प्लगइन्स और थीम का अनुवाद कर सकते हैं।


1
यह सबसे अच्छा अनुवाद प्लगइन मैंने कभी देखा है। यह प्लगइन किसी भी दिन पोएडिट कर सकता है और सबसे अच्छी बात यह है कि यह मुफ़्त और उपयोगकर्ता के अनुकूल है। इस जवाब को कम से कम वोट दिया जाना चाहिए।
गोगोल

1
अब मौजूद नहीं है।
क्रिस कॉक्स

1
यह एक अच्छा विकल्प की तरह दिखता है: wordpress.org/plugins/say-what
jetlej

@jetlej दिलचस्प है, हालांकि मेरी कविता फ़ाइल के लिए काम नहीं करता है: /
निमो

8

(यहां DEUTSCH में अनुवाद का एक उदाहरण है। अपने वांछित लोगों को सीमा शुल्क बदलें।)

प्रत्येक प्लगइन्स सिर में, एक अनूठा नाम है। (उदाहरण के लिए:

/*
Plugin Name: my-pluginname
.......
*/

फिर, उस प्लगइन के फ़ोल्डर में, एक फ़ोल्डर बनाएं "भाषाएँ";

फिर, अपने प्लगइन .php फ़ाइल में (कहीं शीर्ष में), आरंभीकरण कोड डालें:

class load_language 
{
    public function __construct()
    {
    add_action('init', array($this, 'load_my_transl'));
    }

     public function load_my_transl()
    {
        load_plugin_textdomain('my-pluginname', FALSE, dirname(plugin_basename(__FILE__)).'/languages/');
    }
}

$zzzz = new load_language;

फिर किसी भी टेक्स्ट एडिटर को खोलें, फिर इस कोड को डालें (नोट करें, कि हम केवल दो सैंपल मैसेज, "हेलो" और "अलविदा" जोड़ रहे हैं, इसलिए, आप इसी तरह की पंक्तियों के साथ कई संदेशों को जोड़ सकते हैं)।

# English translations for PACKAGE package.
# Copyright (C) 2012 THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# Automatically generated, 2012.
#
msgid ""
msgstr ""
"Project-Id-Version: my-pluginname 1.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-08-06 13:46-0400\n"
"PO-Revision-Date: 2013-03-21 11:20+0400\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"X-Poedit-SourceCharset: iso-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.5.4\n"


#: mypluginindex.php:87 (it is just a line of a note, to remind where our code appears)
msgid "mymessage1"
msgstr "Hello"

#: mypluginindex.php:88
msgid "mymessage2"
msgstr "Bye"

फिर इस फ़ाइल को "my-pluginname-en_US.po" के रूप में सहेजें (ध्यान दें, कि .po फ़ाइल का एक एक्सटेंशन है, इसलिए जांचें कि आपके टेक्स्ट एडिटर प्रोग्राम को "my-pluginname-en_US.po.TXT" पर सहेजा नहीं गया है)।

उसके बाद POEDIT सॉफ्टवेयर डाउनलोड करें, और इस फाइल को खोलें। फिर "अनुवाद" फ़ील्ड को संपादित करें, और फिर "my-pluginname-de_DE" के रूप में सहेजें, दो फ़ाइलों को उत्पन्न किया जाएगा (यदि poEdit स्वचालित रूप से दूसरी .mo फ़ाइल को उत्पन्न नहीं करता है, तो बस फ़ाइल पर जाएं -> प्राथमिकताएं -> संपादक और जांचें। बॉक्स जो कहता है "स्वचालित रूप से संकलन .mo फ़ाइल को सहेजें"),

फिर उन दो फ़ाइल को "भाषाओं" फ़ोल्डर में डालें।

इसके बाद, wp-config.php खोलें और इस कोड को खोजें:

define ('WPLANG, '');

और के लिए बदल जाते हैं

define ('WPLANG, 'de_DE');

बस इतना ही। जब वर्डप्रेस लोड किया जाता है, तो यह आपके प्लगइन्स भाषा फ़ाइल को उपसर्ग -de_DE के साथ पढ़ेगा।

इसलिए, प्लगइन .php फ़ाइल में, इसके बजाय:

echo "Something string";

आपको उपयोग करना चाहिए:

echo __("mymessage1", 'my-pluginname');



ख़त्म होना। अब आपको अपने प्लगइन का परीक्षण करना चाहिए।

पीएस इस्तेमाल लिंक:


मैंने अपने विषय के साथ यह कोशिश की। शीर्ष लेख में echo __("thanks-for-visiting", 'transparent');। थीम \ भाषा \ पारदर्शी-en_US.po में, मेरे पास है msgid "thanks-for-visiting" msgstr "Hello! Thank you for visiting. Take a look around and subscribe to the "। यह फ्रंट एंड पर "थैंक्स-फॉर-विजिटिंग" आउटपुट करता है।
स्टीव

5

आप POEdit का उपयोग करना चाहेंगे । यह .po / .mo फ़ाइलों को बनाने के लिए एक निःशुल्क अनुप्रयोग है।

मैंने यहाँ पूरे विषय पर एक बहुत ही गहन ट्यूटोरियल लिखा है । आप चरण 3 पर जा सकते हैं - पाठ डोमेन के लिए अनुवाद फ़ाइल बनाएँ।


5

मेरा सुझाव है कि h ttp: //poeditor.com/ भी । यह एक वेब-आधारित अनुवाद उपकरण है जो .po, .mo, .pot और अन्य प्रकार की फ़ाइलों के साथ बढ़िया काम करता है।


एक आगंतुक ने इस सेवा के लिए एक नए प्लगइन की ओर इशारा करते हुए एक संपादन का प्रस्ताव रखा: wordpress.org/extend/plugins/poeditor
brasofilo
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.