آموزش فارسی سازی پوسته ها در وردپرس

نرم افزار های مورد نیاز :

۱_آخرین نسخه از FireFox عزیز . اون رو از اینجا دانلود کنید.
۲_آخرین نسخه از افزونه ی Web Developer گرامی! اون رو هم از اینجا دانلود کنید.(اگه الان فایرفوکس دارید کلیک کنید نصب میشه.)
۳_یک نرم افزار که با آن متن ها را ویرایش کنیم و قابلیت ذخیره سازی و نمایش UTF-8 را “داشته” باشد.
۴_یک نرم افزار که با آن متن ها را ویرایش کنیم و فابلیت ذخیره سازی و نمایش UTF-8 را “نداشته” باشد. مثل Notepad Professional
5_نرم افزار poEdit . آن را نیز از اینجا دانلود کنید.
مراحل کلی کار

۱- آشنایی کامل با زبان HTML و CSS برای ترجمه قالب
۲- آشنایی کامل با زبان PHP برای ترجمه افزونه
۳- افزودن قابلیت ترجمه شدن
۴- ایجاد فایل ترجمه و ترجمه*ی آن
۵- فراخوانی فایل ترجمه توسط افزونه/قالب
افزودن قابلیت ترجمه شدن

برای اینکار باید تمامی رشته*های متنی موجود در افزونه/قالب را با توبع مخصوص ترجمه فراخوانی کرد. توابع ترجمه*ی وردپرس دو تابع __ و e_ هستند٬ تفاوت این دو تابع این است که تابع __ مقدار داده شده*اش را بازمی*گرداند (return) و تابع e_ مقدار داده شده*اش را چاپ (echo) می*کند.



این توابع٬ دو آرگومان رو دریافت می*کنن که اولی رشته*ی موردنظر ما و دومی در واقع یه شاخص هست که اینجا بهش domain می*گیم٬ این شاخص در طول ترجمه*ی یه افزونه/قالب ثابت هست.بهتره برای انتخاب نام شاخص از قوانین نامگذاری متغیرها پیروی کنید. یعنی با حروف شروع بشه و به*جز – و _ از سیمبل دیگه*ای استفاده نشه.
مثلن برای قالب کوبریک٬ من از شاخص «kubrick» استفاده کردم.



مثال:
فرض کنیم در یک افزونه/قالب رشته*ای به*صورت زیر وجود دارد٬ همون*طور که می*بینیم این رشته در واقع در صفحه چاپ می*شه و بدون انجام هیچ عملیاتی مستقیماً نشون داده می*شه٬ پس باید اونو با تابع e_ فراخوانی کرد:


کد PHP:
 <div class="post-date">the post date is</div>

که به*صورت زیر در میاد:

کد PHP:
           <div class="post-date"><?php _e('the post date is','shakhes'); ?></div>



بعضی رشته*ها هستن که توی توابع استفاده می*شن و با واسطه نشون داده می*شن یا قبل از نمایش روشون عملیاتی انجام می*شه؛ این*جور رشته*ها رو باید با تابع __ فراخوانی کرد.



مثال:
رشته*ی زیر را که به*عنوان یک آرگومان در تابع استفاده شده را می*خواهیم قابل ترجمه شدن کنیم:

کد PHP:
 <div class="post-date"><?php next_posts_link('« Previous Entries'); ?></div>


که بعد از اعمال توابع ترجمه به*صورت زیر درمیاد:



کد PHP:
 <div class="post-date"><?php next_posts_link(__('« Previous Entries','shakhes')); ?></div>

ایجاد فایل ترجمه

برای اینکار از برنامه*ی poEdit استفاده می*کنیم:
۱- برنامه*ی poEdit را اجرا کنید
۲- به منوی File رفته و گزینه*ی …New catalog را انتخاب کنید.
۳- در پنجره باز شده یک نام برای پروژه انتخاب کنید (زیاد مهم نیست!)
۴- به قسمت paths بروید و مسیر پوشه*ای که فایل*های قالب/افزونه در آنجا قرار دارند را در قسمت base path وارد کنید٬ سپس دکمه*ی New item رو بزنید (آیکونی دوم از سمت چپ٬ شبیه یک مربع با ستاره*ای در گوشه*ی بالا) و در کادر ایجاد شده دوباره مسیر پوشه*ی فایل*ها را که در base path وارد کرده بودید را وارد کنید.
۵- به قسمت keywords بروید و دکمه*ی New item رو بزنید و در کادر ایجاد شده٬ __ (۲تا زیرخط) را وارد کنید٬ سپس دوباره گزینه*ی New item را کلیک کنید و در کادر ایجاد شده e_ را وارد کنید.
۶- حال دکمه*ی OK را بزنید و یک نام برای فایل po. خود انتخاب کنید٬ اگر برای قالب می*خواهید فایل ترجمه بسازید باید فایل po را fa_IR نامگذاری کنید و برای افزونه shakhes-fa_IR
۷- پس از انتخاب نام مناسب٬ برنامه رشته*های متنی قابل ترجمه*شدن را پیدا کرده و نمایش می*دهد٬ پس از اینکه تمامی رشته*ها را ترجمه کردید٬ پرونده را ذخیره کنید٬ در این هنگام برنامه یک فایل mo. هم برای شما در کنار فایل po. قبلی می*سازد
۸- این فایل mo. را اگر برای قالب باشد٬ باید در پوشه*ی خود قالب قرار دهید و اگر برای افزونه باشد باید آن را در پوشه*ی wp-content/plugins قرار دهید.



فراخوانی فایل ترجمه توسط افزونه/قالب

پس از اینکه فایل mo را در محل مناسب قرار دادیم باید به قالب/افزونه بفهمانیم که همچین فایلی وجود دارد تا بتواند برای ترجمه از آن استفاده کند٬ بدین منظور از توابع کد:

کد:
load_plugin_textdomain

و کد:

کد:
load_theme_textdomain

استفاده می*کنیم.
برای قالب*ها

تابع کد:

کد:
load_theme_textdomain

را به*صورت زیر در خط ابتدایی فایل header.phpه قالب اضافه می*کنیم:

کد PHP:
 <?php load_theme_textdomain('shakhes'); ?>

اگر قالب٬ قسمتی را هم به بخش مدیریت وردپرس اضافه می*کند (مثل قالب کوبریک)٬ باید تابع بالا را در خط ابتدایی فایل functions.php هم فراخوانی کرد.
برای افزونه*ها

تابع کد:

کد:
load_plugin_textdomain

را به*صورت زیر در خط ابتدایی فایل اصلی افزونه اضافه می*کنیم:

کد PHP:
 <?php load_plugin_textdomain('shakhes'); ?>

درباره مدیریت سایت

مدیریت لیسانس رشته مهندسی کامپیوتر گرایش سخت افزار از دانشگاه فردوسی مشهد می باشد. و در حال حاضر در حوزه IT ، امنیت شبکه و تجارت الکترونیک مشغول بکار است. تمامی تلاش تیم سافت گیت کسب رضایت صددرصدی مشتریان می باشد.

بدون دیدگاه

پاسخ به این پست

None :P None :P