رفتن به مطلب

پارسی سازی زبان قالب وردپرس


پست های پیشنهاد شده

دوستان درود ! باور نمیکنید چقدر خوشحالم که یک انجمن فعال وردپرس رو پیدا کردم ! اون هم IPB که عشق خودمه :D

من برای اولین تجربم . اومدم یک قالب خارجی رو ترجمه کردم به زبان پارسی . حالا با تموم کمی و کسری ها . اما الان مشکلم چیه ؟

ببینید من با نرم افزار POEDIT اومدم فایل زبان پوشه Language قالب خودم رو فارسی کردم . خروجی ازش دوتا فایل گرفتم .

اومدم اونهارو جایگزین فایل Deafult .po پوشه زبان قالبم کردم به نام bg_BG

البته با یه اسم جدا ! دیدم کار نمیکنه . برداشتم اصن فایل های دیفالت رو حذف کردم .

اومدم دیدم سایت فارسی نشد هنوز .

رفتم چیکار کردم ؟ رفتم تو کانفیگ


define('WPLANG','fa_IR'); // by http://wp-persian.com Team
define('WPLANG', 'bg_BG');

این خط دوم رو هم اضافه کردم .گفتم برای اطمینان یه کپی هم از فایل های Po ای که ساختم رو بزارم تو پوشه

wp-content/languages/themes

آقا بازم درست نشد ! به خودم شک کردم گفتم شاید مشکل از فارسی سازیه . برداشتم تو همون کانفیگ.php

خط اول رو به

define('WPLANG', 'bg_BG');

تغییر دادم !

اینجا قالبم فارسی شد و همه چیز درست بود . اما خوب دیگه خود وردپرس خارجی شد .

حالا به نظر شما من کجای کار رو اشتباه رفتم ؟

سپاس

ویرایش شده توسط Usrapid
لینک به ارسال

سلام. اگر از وردپرس فارسی استفاده می کنید bg رو کلا از فایل کانفیگ پاک کنید، فقط همون خط fa_IR باید توش باشه . بعد توی قالبتون هم باید فایل زبانتون به همین نام باشه . اگر همه ی این کار ها رو کرده اید اما مشکلی هست نحوه ی ترجمتون مشکل داره اصلا به فایل کانفیگ دست نزنید.

کارایی که میتونید انجام بدید این ها هست : 1 - توی قالب چک کنید ببینید چند نوع تکست دومین هست ، گاهی اوقات وجود دو نوع تکست دومین باعث میشه ترجمه ها فراخوانی نشن . برای این کار میتونید با یک ادیتور متن عبارات مثلا :


__(
_e(

رو سرچ کنید . اگر از 2 نوع یافت شد همه رو به یکی تغییر بدید و فایل زبان رو هم آپدیت کنید. اگر بازهم نشد توی قالب دنبال عبارت textdomain بگردید ببینید چند بار این تابع فراخوانی شده اگر افزونه ای به همراه قالب موجود باشه که خودش جداگانه تکست دومین فراخوانی میکنه و شما تکست هاشو با این فایل فراخوانی کنید باز هم من دیدم که این مشکل پیش میاد. برای حلش یا فایل ها رو به پوشه جدا انتقال بدید و جدا ترجمه کنید (افزونه و پوسته رو ) یا اینکه فراخوانی ای که توسط پلاگین انجام شده رو حذف کنید و تکست دومین استرینگ هاش رو هم به مال قالب تغیی بدید.

با انجام این کار ها در 98 درصد مواقع مشکلتون حل میشه. البته از تنظیمات ترجمه در poedit هم قافل نشید(منظورم قسمت catalog هست ).

موفق باشید.

لینک به ارسال

آقا یعنی خدا پدر و مادرت رو بیامرزه . مشکل چی بود ؟! مشکل همون خط اولی بود که شما فرمودی .

من برداشتم یه فایل زبان یه نام دیگه داده بودم

رفتم تو پوشه تم نام فایل رو به Fa_Ir تغییر دادم دیدم زبان درست شد .

یک دنیا سپاس .

//

در مورد اون بحث تکست دامین ... اون رو دقیقا در کدوم فایل های قالب باید به دنبالش باشم ؟ و بعد از پیدا کردنش دقیقا چه کمکی بهم میکنه رو متوجه نشدم .

لینک به ارسال

سلام. اگر از وردپرس فارسی استفاده می کنید bg رو کلا از فایل کانفیگ پاک کنید، فقط همون خط fa_IR باید توش باشه . بعد توی قالبتون هم باید فایل زبانتون به همین نام باشه . اگر همه ی این کار ها رو کرده اید اما مشکلی هست نحوه ی ترجمتون مشکل داره اصلا به فایل کانفیگ دست نزنید.

کارایی که میتونید انجام بدید این ها هست : 1 - توی قالب چک کنید ببینید چند نوع تکست دومین هست ، گاهی اوقات وجود دو نوع تکست دومین باعث میشه ترجمه ها فراخوانی نشن . برای این کار میتونید با یک ادیتور متن عبارات مثلا :


__(
_e(

رو سرچ کنید . اگر از 2 نوع یافت شد همه رو به یکی تغییر بدید و فایل زبان رو هم آپدیت کنید. اگر بازهم نشد توی قالب دنبال عبارت textdomain بگردید ببینید چند بار این تابع فراخوانی شده اگر افزونه ای به همراه قالب موجود باشه که خودش جداگانه تکست دومین فراخوانی میکنه و شما تکست هاشو با این فایل فراخوانی کنید باز هم من دیدم که این مشکل پیش میاد. برای حلش یا فایل ها رو به پوشه جدا انتقال بدید و جدا ترجمه کنید (افزونه و پوسته رو ) یا اینکه فراخوانی ای که توسط پلاگین انجام شده رو حذف کنید و تکست دومین استرینگ هاش رو هم به مال قالب تغیی بدید.

با انجام این کار ها در 98 درصد مواقع مشکلتون حل میشه. البته از تنظیمات ترجمه در poedit هم قافل نشید(منظورم قسمت catalog هست ).

موفق باشید.

آقا من اول صبح نفهمیدم شما دقیقا تو بقیه خط ها چی گفتی :lol: گفتم با خودم چی میگه این بنده خدا من نمیفهمم ... هیچی . یه جا تو قالب یه دکمه بود به نام Read More آقا ما آسفالت شدیم تا اینو پیدا کردیم ... همون بحث افزونه ها بود که گفتی . بعد تازه متوجه اون e_ هم شدم . خلاصه بازم ممنون از بابت راهنماییت .

در مورد تغییر تکست دامین به قالب اگه میشه یه مثال واسم بزنی خیلی ممنونت میشم .

لینک به ارسال

سلام. خوشحالم که تونستم کمکی بهتون کنم. مثالش میتونه این باشه :


<?php
// text domaine ghaleb dar in mesal themetextdomain hast
_e('hello' , 'themetextdomain');
// text domaine dar yek afzoone be in soorat hast
_e('ajab' , 'myplugintextdomain');
?>

حالا شما بیا تکست دومین استرینگ های توی افزونه رو به 'themetextdomain' تغییر بده و اون تابع load_plugin_textdomain رو هم از توی افزونه ی اینکلود شده پاک کن تا استرینگ هاش با استرینگ های پوسته یکپارچه بشه.

البته دقت هم داشته باش که فقط زمانی که پوسته درست ترجمه نشده و افزونه هم درش درست اینکلود نشده این روش خوب هست وگرنه خیلی اوقات میتونی اون افزونه ای که توی پوسته هست رو جای دیگه کپی کنی و از پوسته حذف کنی و با poedit فایل زبان پوسته رو آپدیت کنی ( یا یکی جدید بسازی و ترجمه کنی و افزونه رو هم با poedit جداگونه ترجمه کنی بعد بزاریشون کنار هم.

که توی این مورد شما خوشبختانه اصلا مساله به این پیچیدگی نبود.

موفق باشید.

لینک به ارسال

یه چیز جالبی که الان از حرف های شما فهمیدم اینه که (البته اگه درست متوجه شده باشم )

اگر یه چاهایی که گیر میکنم و چندتا افزونه چند فایل زبان دارن و کار خیلی پیچیده شده .

من بیام به جای تغییر تک تک اونا . برم تکست دامین اونهارو به تکست دامین قالب تغییر بدم . بعد تو فایل زبان خود قالب بیام ترچمه ی اونهارو ارائه کنم ؟!

اگه اینی که من گفتم دقیقا منظور شماست ... این فوق العادست ... مرسی از راهنماییت

لینک به ارسال

سلام. مطمئن نیستم که ترجمه اونها اگر توی قالب باشه فراخوانی میشه یا نه اما خودتون میتونید تست کنید و ما رو هم مطلع کنید. :D

موفق باشید.

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...