Magento2 স্থানীয়করণ জাভাস্ক্রিপ্ট


16

ইতিমধ্যে এখানে অনুরূপ প্রশ্ন জিজ্ঞাসা করা হয়েছিল: ম্যাজেন্টো 2 জাভাস্ক্রিপ্টের পাঠ্য অনুবাদ , তবে ম্যাজেন্টো এই অনুবাদ কৌশলটি বিটা সংস্করণে আপডেট করেছে।

আমি জাভাস্ক্রিপ্ট দ্বারা ব্যবহৃত অনুবাদগুলি কীভাবে যুক্ত বা আপডেট করতে পারি?

আমি বুঝতে পেরেছি যে ম্যাজেন্টো স্ট্যাটিক ফোল্ডারে 'js-translation.json' নামে একটি ফাইল তৈরি করে। আমি যদি এই ফাইলটি সরাসরি সম্পাদনা করি তবে আমি দেখতে পাচ্ছি যে আমার অনুবাদগুলি আপডেট হয়েছে। তবে এই ফাইলটি কোথায় তৈরি করা হয়েছে এবং আমি কীভাবে অনুবাদগুলি যুক্ত করতে পারি যাতে ম্যাগেন্টো এটি তৈরির সময় স্বয়ংক্রিয়ভাবে এটি js-Translation.json এ যুক্ত করবে?

হালনাগাদ

এখনও এই প্রশ্নের সঠিক উত্তর দেওয়া হয়নি, যথেষ্ট পরিমাণে Mage2.PRO আমাকে সঠিক দিকে নির্দেশ করেছেন, এটি সম্পূর্ণ উত্তর নয়। আমার জেএস-অনুবাদ.json উত্পন্ন যখন এখনও খালি।

উদাহরণস্বরূপ, আমি অ্যাড টু কার্ট বোতামটি অনুবাদ করতে চাই। এই বোতামটিতে তিনটি রাজ্য রয়েছে, কার্টে যোগ করুন, যোগ করা হচ্ছে ... এবং যুক্ত করা হয়েছে ... আমি এই শব্দগুলি কীভাবে অনুবাদ করতে পারি? আর একটি উদাহরণ, 'আপনার শপিং কার্টে আপনার কোনও আইটেম নেই।' মিনিকার্টে পাঠ্য। আমি মনে করি এই সমস্ত বাক্যাংশগুলি জেএস-অনুবাদ.json থেকে অনুবাদ করা উচিত, তবে এই ফাইলগুলিকে এই অনুবাদগুলিতে পূর্ণ করা হলে এগুলিকে কোথায় যুক্ত করবেন?


আমি এটি সম্পর্কে 100% নিশ্চিত নই তবে আমি মনে করি mage2.pro দ্বারা প্রদত্ত উত্তরটি সঠিক। আপনার যদি উদাহরণস্বরূপ জেএস ফাইলগুলির একটিতে $.mage.__('Add To Cart')এটি থাকে তবে এটি স্বয়ংক্রিয়ভাবে setup:static-content:deployকমান্ড দ্বারা বাছাই করা হবে । একমাত্র ক্যাচটি হ'ল আপনার লোকেল ফাইলগুলিতে পাঠ্যের জন্য আলাদা অনুবাদ থাকতে হবে। অনুবাদ হিসাবে একই পাঠ্য রয়েছে এমন কারণগুলি কোনও কারণ ছাড়াই আকার না বাড়ানোর জন্য জাসন ফাইলে যুক্ত হবে না।
মারিয়াস

উত্তর:


10

আপনি এটি ইতিমধ্যে খুঁজে পেয়েছেন কিনা তা নিশ্চিত নন, তবে আমি ভেবেছিলাম যেভাবেই উত্তর দেব ..

আমার ধারণা অন্যান্য উত্তরগুলি সঠিক দিকে চলেছে।

অনুগ্রহ করে আপনার যদি ইতিমধ্যে অনুবাদগুলি ইনস্টল করা আছে তবে দয়া করে:

bin/magento i18n:pack -m replace -d source_nl_NL.csv . nl_NL

সুতরাং, সবার আগে, দয়া করে ক্যাশেটি সাফ করুন (অন্যরাও পরামর্শ দিয়েছে):

rm -rf var/cache var/generation var/page_cache var/view_preprocessed

দ্বিতীয়ত, দয়া করে আপনার পাব / স্ট্যাটিক ফোল্ডারটি সাফ করুন:

rm -rf pub/static/*/

তারপরে আমরা স্থির-বিষয়বস্তুটি পুনরুত্থিত করেছি : (আমি অন্যান্য উত্তরে ল্যাংকোডটি মিস করেছি ..)

bin/magento setup:static-content:deploy nl_NL - আপনি ল্যাঙ্ককোড যুক্ত করেছেন তা নিশ্চিত করুন

এখন দেখুন কোন জেএস-অনুবাদ.json তৈরি হয়েছে কিনা:

find pub/static/ -name "js-translation.json"

সম্ভবত আপনি js-translation.jsonফাইলগুলির একটি তালিকা পাবেন । দয়া করে এই ফাইলগুলি চেক করুন এবং সেগুলি খালি থাকলে বা এর মতো কিছু থাকে তা মুছুন []


1
থিম ধন্যবাদ, সত্যিই এটি যাওয়ার উপায়! আমি এটি কিছুক্ষণ আগে নিজেই বের করেছিলাম, তবে এখনও উত্তর এখানে পোস্ট করিনি। এটি প্রশ্নের একটি দুর্দান্ত সংযোজন।
সিলভান

@ সিলওয়ান আমার ইনস্টলেশনটিতে ফাইলটি জেস-ট্রান্সলেশন.জসন ইতিমধ্যে আমার লোকলে কিছু বাক্যাংশ অনুবাদ করেছে তবে এখনও বাক্যাংশ অনুবাদ করা হচ্ছে না, আমি কি এই ফাইলগুলিতে ম্যানুয়ালি যুক্ত করব?
লুইস গার্সিয়া

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

1

.Csv ফাইলগুলিতে অনুবাদগুলি যুক্ত করার চেষ্টা করুন, তারপরে নিশ্চিত হয়ে নিন যে পরবর্তী পদক্ষেপগুলি কার্যকর করা হয়েছে:

  1. ক্যাশে সঞ্চয়স্থান ফ্লাশ করা উচিত (মূলত var / cache এবং var / view_preprocessed ফোল্ডারগুলি সাফ করা উচিত)
  2. স্ট্যাটিক ফাইলগুলি পুনর্বার নিয়োগ করা উচিত (পাব / স্ট্যাটিকের সমস্ত ফোল্ডার মুছুন এবং বিন / ম্যাজেন্টো সেটআপ চালান: স্ট্যাটিক-সামগ্রী: স্থাপন করুন)

0

সমস্ত ক্যাশে এবং মুছুন পাব / স্ট্যাটিক ফোল্ডার সামগ্রী।

আপনার মূল ডিরেক্টরিতে যান এবং নীচের কমান্ডটি চালান: -

পিএইচপি বিন / ম্যাজেন্টো সেটআপ: স্ট্যাটিক-সামগ্রী: মোতায়েন করুন

আশা করি আপনার সমস্যার সমাধান হয়ে যাবে।


আরকাদিসিএইচ আমাকে ক্যাশে এবং পুনরায় প্রবর্তনীয় স্ট্যাটিক ফাইলগুলি মুছে ফেলার কথাও বলেছিল, দুর্ভাগ্যক্রমে এটি আমার সমস্যার সমাধান করে না।
সিলওয়ান

0

আমার যেমন একই সমস্যা ছিল "পিএএমটিএল-এ" বাক্যাংশগুলি অনুবাদ করতে পারে না __ ('এক্সএক্সএক্সএক্স') "যখন পিটিএইচটিএমএল বাক্যাংশটি পুরোপুরি কাজ করে। সুতরাং, সমাধানটি উদ্ভাবনীভাবে সহজ ছিল।

$ t (...) এবং $। छवि কেবল ফাইলগুলি * .js বিশ্লেষণ করে

ফলস্বরূপ এটি জেএস-অনুবাদ অভিধানে পড়ে না।

সুতরাং পিটিএইচএমএল ফাইলগুলিতে কোনও বিভাগের স্ক্রিপ্ট রেন্ডার করার সময়, আপনার সরাসরি র্যাপারগুলির সাথে ইতিমধ্যে অনুবাদ করা বাক্যাংশ সন্নিবেশ করা উচিত __('Translated phrase')

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