WordPress এ দুটি ফাংশন — __() এবং _e() — মূলত অর্থ অনুবাদ (Localization) এবং আন্তর্জাতিকীকরণ (Internationalization) এর জন্য ব্যবহৃত হয়। এগুলি প্লাগইন এবং থিম ডেভেলপমেন্টে অত্যন্ত গুরুত্বপূর্ণ, কারণ এগুলি বিভিন্ন ভাষার জন্য কন্টেন্ট বা স্ট্রিং অনুবাদ করতে সহায়তা করে।
__() ফাংশন
__() ফাংশনটি একটি স্ট্রিং গ্রহণ করে এবং তার অনুবাদ ফাইল থেকে প্রযোজ্য অনুবাদটি ফেরত দেয়। এটি একটি সাধারণ ফাংশন যা সাধারণত কোনো ভ্যালু বা স্ট্রিং রিটার্ন করতে ব্যবহৃত হয়, কিন্তু কখনো সরাসরি প্রদর্শন করা হয় না।
ব্যবহারের উদাহরণ:
ধরা যাক, আপনি একটি প্লাগইন বা থিমে এমন একটি স্ট্রিং ব্যবহার করতে চান যা ব্যবহারকারীর ভাষায় অনুবাদ হতে পারে। এর জন্য আপনি __() ফাংশনটি ব্যবহার করবেন।
$translated_text = __('Hello, World!', 'my-text-domain');
echo $translated_text;
এখানে:
__('Hello, World!', 'my-text-domain'): 'Hello, World!' এই স্ট্রিংটি অনুবাদ করার জন্য__()ফাংশন ব্যবহৃত হয়েছে।'my-text-domain': এটি একটি ইউনিক ডোমেইন, যা থিম বা প্লাগইন থেকে সমস্ত অনুবাদ টেক্সট ফাইলকে চিহ্নিত করে।
এই ফাংশনটি কেবলমাত্র স্ট্রিং ফেরত দেয়, আপনি নিজে এটি কোথাও প্রদর্শন করতে পারেন, যেমন এখানে echo ব্যবহার করা হয়েছে।
_e() ফাংশন
_e() ফাংশনটি __() এর মতোই কাজ করে, তবে এটি স্ট্রিংটি সরাসরি প্রদর্শন করে। অন্য কথায়, __() ফাংশন স্ট্রিংটি রিটার্ন করে, কিন্তু _e() স্ট্রিংটিকে ওয়েব পেজে সরাসরি আউটপুট (প্রদর্শন) করে।
ব্যবহারের উদাহরণ:
_e('Hello, World!', 'my-text-domain');
এখানে:
_e('Hello, World!', 'my-text-domain'): এই স্ট্রিংটি সরাসরি ওয়েব পেজে প্রদর্শিত হবে।'my-text-domain': এই টেক্সট ডোমেইনটি প্লাগইন বা থিমের সমস্ত অনুবাদ টেক্সট ফাইলের সাথে সম্পর্কিত।
__() এবং _e() এর মধ্যে পার্থক্য
| ফাংশন | কাজ |
|---|---|
__() | স্ট্রিংটি রিটার্ন করে, অর্থাৎ আপনি নিজের মতো এটি প্রক্রিয়া বা প্রদর্শন করতে পারেন। |
_e() | স্ট্রিংটি সরাসরি প্রদর্শন করে, কোন রিটার্ন নেই। |
অনুবাদ টেক্সট ফাইল তৈরি করা
WordPress-এ কোনো স্ট্রিং অনুবাদ করার জন্য, আপনাকে একটি .pot ফাইল তৈরি করতে হবে যা সমস্ত স্ট্রিংয়ের একটি সংগ্রহ রাখে। এরপর, আপনি .po এবং .mo ফাইল তৈরি করে অনুবাদ করতে পারেন।
কিভাবে .pot ফাইল তৈরি করবেন:
- Poedit বা অন্য কোনো অনুবাদ টুল ব্যবহার করুন।
- আপনার থিম বা প্লাগইনের স্ট্রিং গুলি নির্বাচন করুন (যেমন
__('Hello, World!', 'my-text-domain'))। .potফাইলটি তৈরি করুন এবং সংশ্লিষ্ট ভাষার.poফাইল তৈরি করুন।.poফাইলটি সংশ্লিষ্ট.moফাইলে কম্পাইল করুন যা WordPress এটি ব্যবহার করবে।
সারাংশ
__() এবং _e() ফাংশনগুলি WordPress এ স্ট্রিং অনুবাদ এবং আন্তর্জাতিকীকরণ (i18n) পরিচালনা করতে ব্যবহৃত হয়। __() স্ট্রিং রিটার্ন করে এবং _e() সরাসরি প্রদর্শন করে। আপনি যখন WordPress প্লাগইন বা থিম তৈরি করবেন, তখন এই ফাংশনগুলি ব্যবহার করে বিভিন্ন ভাষায় আপনার সাইটের কন্টেন্ট অনুবাদ করতে পারবেন, যা সাইটের ইউজার এক্সপেরিয়েন্স উন্নত করে।
Read more