আমি কীভাবে ব্যবহারকারীর ইন্টারফেস অনুবাদ স্থাপন করতে পারি?


12

"ব্যবহারকারী ইন্টারফেস অনুবাদ" / অ্যাডমিন / কনফিগারেশন / আঞ্চলিক / অনুবাদে আমি যে স্ট্রিংগুলি অনুবাদ করি সেগুলি আমার জন্য "কনফিগারেশন পরিচালন" / অ্যাডমিন / কনফিগারেশন / উন্নয়ন / কনফিগারেশন দ্বারা রফতানিযোগ্য নয়। আমি কিছু অনুপস্থিত করছি?

আমি hook_update_Nবা এই প্রক্রিয়াটি স্বয়ংক্রিয় করতে চাই drush cim -y

দ্রুপাল 8-এ স্বয়ংক্রিয়ভাবে "ব্যবহারকারীর ইন্টারফেস অনুবাদ" স্থাপন করার সঠিক উপায় কী?

  1. আমি এটা করা উচিত hook_update_N()?
  2. আমি mytranslations.poকি ভাষা ফোল্ডারে কিছু কাস্টম ফাইল তৈরি করব ?

আমি দেখতে পাচ্ছি locale_translate_batch_import_files()যা ব্যবহার করা যেতে পারে।


আপনি কি শেষ করেছেন?
ছেলে বউকেমা

@ রেলাএক্সনিউ, আমি এখনও কোনও সমাধান কার্যকর করি নি। AFAICS আমদানি / ব্যবহারকারীর ইন্টারফেস অনুবাদ রফতানি স্বয়ংক্রিয় নয় is আমি একটি সাথে যেতে পরিকল্পনা hook_update_N। @ বার্ডিরের পরামর্শটি একবার দেখুন।
দুধভস্কি

নতুন ড্রুপাল কনসোল এবং এর কমান্ড সম্পর্কে আপনি কি জানেন translation:sync? দুর্ভাগ্যক্রমে আমি এই আদেশটি সম্পর্কে কোনও বিশদ তথ্য পাই না তবে এটি আপনি যা খুঁজছেন তা তা করে does
ফিলিপ মাইকেল

1
আমি আমাদের এটির জন্য একটি মডিউল রোল করেছি: drupal.org/project/customtransferences মজা করুন।
গিক-মের্লিন

আমাদের ক্ষেত্রে আমরা পটক্স ( github.com/kgaut/drupal-potx ) এর সাথে একটি পরীক্ষা করেছি যা কেবল দ্রাশের সাথে চলছে। এই "সহজেই" অর্জনের জন্য আমরা একটি .sh ফাইল করেছি যারা প্রতিটি মডিউল এবং প্রতিটি ভাষার জন্য মডিউল / কাস্টম / অনুবাদগুলিতে অনুবাদ ফাইল রাখার জন্য ড্রাশ কমান্ড কার্যকর করছে। তারপরে এই ফাইলটি প্রকল্পের গিটল্যাব সংগ্রহস্থলে যুক্ত করা হয় এবং মোতায়েনের সময় সহজেই উত্পাদনে আমদানি করা যায় ...
প্রচার

উত্তর:


6

আপনার নিজের এটি করতে হবে। @ আরপায়ানম জবাব দিয়েছিল যেখানে আপনি নিজে এটি করতে পারবেন সেখানে আপনার কোডটি দেখতে হবে এবং উদাহরণস্বরূপ ড্রাশ কমান্ডগুলি প্রয়োগ করা হবে যা আপনাকে এটিকে আবার রফতানি এবং আমদানি করতে দেয়। স্বয়ংক্রিয়ভাবে যা অপেক্ষাকৃত সহজ, রফতানি করা হয়, অন্যান্য সার্ভারে এটি সিঙ্ক করে আবার আমদানি করে।

এমন একটি প্রকল্পের মতো দেখে মনে হচ্ছে যা বিদ্যমান রয়েছে: ড্রাশ ল্যাঙ্গুয়েজ কমান্ডগুলি

আপনি একটি মডিউলে ডিফল্ট অনুবাদগুলি রাখতে পারেন, তবে সেগুলি কেবল তখনই আমদানি করা হয় যখন আপনি সেই মডিউলটি ইনস্টল করেন। hook_update_N()কেবল একবার চালানোর জন্য ডিজাইন করা হয়েছে, তাই প্রতিবার আপনি এটি করতে চাইলে একটি নতুন ফাংশন লিখতে হবে (এবং আপনাকে এখনও এটি প্রথমে রফতানি করতে হবে)।


3
drupal.org/project/drush_language এখন একটি ডি 8 (দেব) সংস্করণ রয়েছে।
হুগো

1
আপনি কি ফর্মটি যা থেকে অনুবাদের আমদানি পরীক্ষা করতে পারবেন /admin/config/regional/translate/importউপর core/modules/locale/src/Form/ImportForm.php
rpayanm


4

কাস্টম অনুবাদ যুক্ত করতে সহায়ক ফাংশন:

/**
 * Helper to manually add a single translation string.
 *
 * @param string $source_string
 *   Source string.
 * @param string $langcode
 *   The langcode.
 * @param string $translated_string
 *   Translated string.
 */
function MYMODULE_add_translation($source_string, $langcode, $translated_string) {
  // Find existing source string.
  $storage = \Drupal::service('locale.storage');
  $string = $storage->findString(['source' => $source_string]);
  if (is_null($string)) {
    $string = new SourceString();
    $string->setString($source_string);
    $string->setStorage($storage);
    $string->save();
  }
  // Create translation. If one already exists, it will be replaced.
  $translation = $storage->createTranslation([
    'lid' => $string->lid,
    'language' => $langcode,
    'translation' => $translated_string,
  ]);
  $translation->save();
}

একটি আপডেট হুক ব্যবহার:

/**
 * Add translations.
 */
function MYMODULE_update_8002() {
  MYMODULE_add_translation('Adjust', 'de', 'Anpassen');
}

4

আপনি আপনার সাইট এ দ্বারা ব্যবহৃত অনুবাদকৃত স্ট্রিংগুলি রফতানি করতে পারেন (অ্যাডমিন / কনফিগার / আঞ্চলিক / অনুবাদ / এক্সপোর্ট) এবং তারপরে সেগুলি অন্য সাইটে আমদানি করতে পারেন (অ্যাডমিন / কনফিগার / আঞ্চলিক / অনুবাদ / আমদানি)।


1
ধন্যবাদ. আমি এটা জানি. তবে এটি কোনও স্বয়ংক্রিয় স্থাপনা নয়। আমি hook_update_Nবা এই প্রক্রিয়াটি স্বয়ংক্রিয় করতে চাই drush cim -y। আমি এটি বিবরণে যুক্ত করব।
দুধওয়স্কি

1

দেখে মনে হচ্ছে ড্রুশ লোকাল সিঙ্ক থেকে কমান্ড চালানোর জন্য স্ক্রিপ্ট লিখে এটি করাও সম্ভব হওয়া উচিত , যদিও আমি নিজেই সেই মডিউলটি চেষ্টা করি নি।


2
দয়া করে এর জন্য মন্তব্যগুলি ব্যবহার করুন, এটি সত্যিই উত্তর নয় ...
মিশ্রোস্কি

1
এটি সঠিক ছিল কি না তা আমি নিশ্চিত ছিলাম না, তাই আমি ভেবেছিলাম আমার এটি উত্তর হিসাবে পোস্ট করা উচিত এবং অন্য লোকেরা এটির উপরে বা নীচে ভোট দিন। আপনি যদি এটির ভুল মনে করেন তবে দয়া করে ভোট দিন।
বিডএসএল

1

প্রশ্নের মন্তব্যে এক্সেক্সেল হিসাবে উল্লেখ করা হয়েছে, আপনি কাস্টম অনুবাদ মডিউলটি ব্যবহার করতে পারেন । এটির সাথে আপনার কেবলমাত্র drush locale-updateআপনার স্থাপনার স্ক্রিপ্টে অন্তর্ভুক্ত করা উচিত need

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.