اینجا را پلاس 1 کنید!

 

تبدیل کامنت پینگلیش به فارسی برای وردپرس : خداحافظ پینگلیش !

پنج شنبه, مهر ۱۶, ۱۳۸۸ ۱۸:۵۶
ارسال شده در قسمت : وردپرس, اینترنت
3,337 بازید ۲۳ نظر

مشکل بسیاری از وبلاگنویس های ایرانی، دیدگاه های پینگلیش (فینگلیش : mesle in) است که بازدیدکنندگان برای نوشته های آنها ارسال می کنند. این کامنت ها علاوه بر اینکه بر اساس ساختار “راست به چپ” وبلاگ فارسی، بدشکل دیده می شوند، سخت خوانده می شوند و اغلب ظاهر قسمت نظرات وبلاگ را ناخوشایند می کنند. چند سایت ( + و + ) وجود دارند که عمل نویسه گردانی (Transliteration) – پینگلیش به فارسی – را انجام می دهند. اما آیا می توان بازدیدکننده ی وبلاگ را مجبور به استفاده از آن سایت ها کرد؟! پاسخ این سوال بدون تعلل، منفی است! بازدیدکننده ی ایرانی، سایت شما را هم به سختی باز کرده است. پس هر کمکی هست، باید همین جا صورت گیرد. اما چاره ی این مشکل در وبلاگ های فارسی چیست ؟!

هر دو سایتی که در بالا معرفی شده اند، (API (Application Program Interface مناسبی برای اینکار تهیه کرده اند. با تمام احترامی که برای سایت وطنیِ نخست و کار کم نظیرشان قائلم، با توجه به سادگی کار و اطمینان بیشتر در سرویس رسانی، ترجیح می دهم از نویسه گردانِ سایت دوم ( که دوست عزیزمان گوگل است!) استفاده کنم.

من اسکریپت گوگل را به نحوی ویرایش کردم که قسمت “نام” و “متن” در نظرات را شامل شود. در این صورت پس از انجام مراحلی که توضیح خواهم داد، قابلیت های زیر به قسمت “ارسال نظرات” وبلاگتان اضافه می شود :

–          در صورتی که “نام” به صورت پینگلیش نوشته شود، با زدن یک فاصله (Space) بعد از آن، به فارسی تبدیل می شود.

–          اگر “متن” دیدگاه به صورت پینگلیش نوشته شود، پس از زدن فاصله بعد از هر کلمه، خود به خود به فارسی تبدیل می شود.

–          در صورتی که نیاز باشد یک یا چند کلمه ی انگلیسی داخل متن باشد، کافیست ctrl+g را فشار دهید و انگلیسی تایپ کنید. در این صورت نوشته هایی که پس از این کار تایپ می کند، به فارسی تبدیل نمی شوند. پس از اتمام کلمه های انگلیسی، با فشردن مجدد ctrl+g، نویسه گردانی دوباره فعال می شود و کلمات پینگلیش به فارسی تبدیل می شوند.

–          اشتباه های نویسه گردانی را به سادگی اصلاح کنید! مثال : فرض کنید به صورت پینگلش نوشته اید “in name ro bekhun”. این نوشته به این صورت برگردان می شود : “این نام رو بخون”. در صورتی که منظور شما از “name” کلمه ی “نامه” بوده است، کافیست بر روی برگردان آن (یعنی کلمه ی “نام”) کلیک کنید تا حالت های دیگر برگردان را به شما نشان دهد. در این صورت می توانید به راحتی “نام” را به “نامه” اصلاح کنید.

حال نحوه ی انجام این کار برای وبلاگ های وردپرسی (WordPress) را توضیح می دهم :

–          وارد قسمت ویرایش پوسته در وبلاگ وردپرس تان شوید.

–          فایل comments.php را برای ویرایش انتخاب کنید. ( یا هر فایل دیگری که شامل قسمت “فرم ارسال نظر” در وبلاگتان است)

–          این خطوط برنامه را در بالاترین قسمت فایل (یعنی از ابتدای فایل) به آن اضافه کنید :

<script type="text/javascript" src="http://www.google.com/jsapi">
</script>
<script type="text/javascript">
google.load("elements", "1", {
packages: "transliteration"
});
function onLoad() {
var options = {
sourceLanguage: 'en',
destinationLanguage: ['fa'],
shortcutKey: 'ctrl+g',
transliterationEnabled: true
};
var control =
new google.elements.transliteration.TransliterationControl(options);
var ids = [ "author", "comment" ];
control.makeTransliteratable(ids);
}
google.setOnLoadCallback(onLoad);
</script>

–          در کد بالا، در این قسمت می توانید فیلد هایی که نویسه گردانی می شوند تغییر دهید :

var ids = [ “author“, “comment” ]

در واقع author  مشخصه (id) فیلدی است که “نام” ارسال کننده ی نظر را شامل می شود. این فیلد در اغلب پوسته های وردپرس به همین نام است. در غیر این صورت داخل فایل comments.php کمی جستجو کنید و چیزی مانند این را بیابید :


<input type=”text” name=”author” id=”author” value=”<?php
echo $comment_author; ?>”

واژه ی comment نیز مشخصه (id) فیلدی است که متن دیدگاه را شامل می شود، این فیلد نیز اغلب به همین نام است. در غیر این صورت، چیزی مشابه این را جستجو کنید :


<p><textarea name=”comment” id=”comment” class=”replyarea”></textarea></p>

توجه کنید که تا زمانی که مشخصه های فیلد ها را درست وارد اسکریپت فوق نکنید، این نویسه گردان کار نخواهد کرد. همچنین دقت کنید که فیلد های نویسه گردان را در اسکریپت نویسه گردان اصلاح کنید. نه اینکه id های فایل comments.php را تغییر دهید! (نگویید “تابلوه دیگه” ، انسان گاهی اشتباه می کند)

–          کار تمام است! فایل comments.php را به روز رسانی کنید و از نویسه گردان وبلاگتان لذت ببرید!

پی نوشت ۱ : من سعی کرده ام در توضیحی مختصر، کار با نویسه گردان را در قسمت نظرات خود تفسیر کنم که قابل استفاده برای بازدیدکنندگان باشد. اگر پیشنهاد و تفسیر بهتری سراغ داشته باشید، حتماً استقبال می کنم :)

پی نوشت ۲ : من این نویسه گردان را با اینترنت اکسپلورر و فایرفاکس امتحان کردم و کار کرد! اگر از مرورگر دیگری استفاده می کنید و نویسه گردان وبلاگ من برای شما کار می کند، لطفاً همین جا اطلاع دهید تا بقیه نیز بدانند.

مشترک سی نا.نت شوید تا نوشته های اینجا را در ایمیل تان بخوانید ...
به وسیله‌ی ایمیل:
 
ایمیل شما نزد ما محفوظ و اشتراک تان هر لحظه با یک کلیک قابل انصراف است.

یا به وسیله‌ی فـیـد (خوراک)

۲۳ ديدگاه براي “تبدیل کامنت پینگلیش به فارسی برای وردپرس : خداحافظ پینگلیش !”

  1. کاوشگر گفته است :

    مهر ۱۸ام, ۱۳۸۸ در ۱۱:۳۰ ق.ظ

    سلام.
    من از مرورگر Opera 10 استفاده میکنم. متاسفانه کار نمیکنه!

    [پاسخ]

    سینا پاسخ در تاريخ مهر ۱۸ام, ۱۳۸۸ ۳:۲۰ ب.ظ:

    @کاوشگر, سلام. من همین الان با Opera 10 امتحانش کردم و متاسفانه کار نکرد! فکر کنم مشکل تو اینه که اپرا زیاد جاوا اسکریپت دوست نداره!
    به هر حال ممنون که اطلاع دادید:)
    ظاهراً از این روش برای وبلاگ خودتون هم استفاده کردید. خوشحال میشم اگه به این مطلب لینک بدید تا بقیه ی دوستان وبلاگ نویس هم امتحان کنن و تجربه شون رو بگن :)

    [پاسخ]

    کاوشگر پاسخ در تاريخ مهر ۱۹ام, ۱۳۸۸ ۱۲:۰۸ ب.ظ:

    @سینا, آقا سینا به شما هم لینک دادم! ;)

    [پاسخ]

  2. عباس هوشمند گفته است :

    مهر ۲۰ام, ۱۳۸۸ در ۱۰:۰۲ ق.ظ

    چه کردی سینا. وبلاگت جهانی شده …عالی بود

    [پاسخ]

    سینا پاسخ در تاريخ مهر ۲۱ام, ۱۳۸۸ ۱۲:۲۹ ق.ظ:

    @عباس هوشمند, مرسی عباس :) راستی امتحان کردی ؟
    جهانی؟ :D بیشتر توضیح بده ;)

    [پاسخ]

  3. ebrahim گفته است :

    مهر ۲۰ام, ۱۳۸۸ در ۹:۰۶ ب.ظ

    من از chrome استفاده می کنم و جواب نمیده.

    [پاسخ]

  4. ebrahim گفته است :

    مهر ۲۰ام, ۱۳۸۸ در ۹:۰۹ ب.ظ

    ctrl g رو که می زنم فایند می آد و حرف بعدی w رو تو صفحه می گرده. فکر کنم bug خود کروم باشه (chrome 4) . نمی شه بی خیال ctrl g بشید؟

    [پاسخ]

    سینا پاسخ در تاريخ مهر ۲۱ام, ۱۳۸۸ ۱۲:۳۳ ق.ظ:

    @ebrahim, راستش با کروم رو هنوز خودم امتحان نکردم، به زودی تست می کنم :) ولی فکر کنم مشکل ctrl+g رو بشه حل کرد … تو خط ۱۱ از اسکریپت، فکر کنم بتونید یه shortkey دیگه واسش تعریف کنید. مثلاً ctrl+8 ! اگه امتحان کردید، لطفاً نتیجه اش رو به من هم بگید :)

    [پاسخ]

  5. SHahab گفته است :

    مهر ۲۵ام, ۱۳۸۸ در ۹:۴۲ ق.ظ

    سلام این کد یک مشگل در نمیشه بهش ۲ تا ID داد
    var ids = [ “author”, “comment” ]
    میشه یک تستش بکنید ؟
    من با یکی تونستم درستش کنم ولی وقتی ۲ تا میزارم ارور میده

    [پاسخ]

    سینا پاسخ در تاريخ مهر ۲۵ام, ۱۳۸۸ ۶:۵۵ ب.ظ:

    @SHahab, من الان بهش همین دوتا ID رو دادم و کار میکنه :) قسمت نام و متن کامنت ها برای من فعال شدن.

    [پاسخ]

    SHahab پاسخ در تاريخ آبان ۲ام, ۱۳۸۸ ۷:۰۵ ب.ظ:

    @سینا, بله شما درست میگفتید برای کار کردن باید هر دو فیاد وجود داشته باشد مرسی از این آموزش

    [پاسخ]

  6. مجتبی گفته است :

    آبان ۱ام, ۱۳۸۸ در ۷:۵۹ ب.ظ

    من در اینجا باید از شما بسیار زیاد تشکر کنم که این اسکریپت جالب رو طراحی کردین!!! کلی حال دیدی بابا…… ایول داش سینا!!!

    [پاسخ]

  7. علیرضا الله دادی گفته است :

    آبان ۱۵ام, ۱۳۸۸ در ۳:۱۰ ب.ظ

    واقعا عالیه ! ممنون ! این متنی رو هم که می بینین فینگلیش نوشتم و فارسی شد بدون غلط املایی !

    [پاسخ]

  8. کوروش گفته است :

    آذر ۱۲ام, ۱۳۸۸ در ۳:۴۷ ق.ظ

    سلام دستت درد نکنه

    من متاسفانه وقتی با Fierfox3.5.5امتحانش میکنم جواب نمیده ولی با ۷ عالیه

    [پاسخ]

    سینا پاسخ در تاريخ آذر ۱۲ام, ۱۳۸۸ ۱۰:۱۲ ب.ظ:

    @کوروش, اتفاقاً منم با همین ورژن فایرفاکس ازش استفاده می کنم و کار میکنه. احتمالاً کاری کردید که جاوااسکریپت کار نمی کنه تو فایرفاکس تون :)

    [پاسخ]

  9. mEhdi گفته است :

    مرداد ۱۶ام, ۱۳۸۹ در ۷:۱۸ ق.ظ

    Firefox 3.6.8.NETCLR3.5.30729 Windows Vista

    سلام آقا سینا
    خوبی؟
    جدیدا زیاد میام اینجا، نمیدونم چرا خوشم اومده!
    همچین چشامو گرفته. چند میفروشی بلاگت رو؟ :دی

    خواستم نظر بزارم که نامردی نکرده باشم :)

    دستت درد نکنه کار کرد واسه منم
    خودتم یه امتحان کن ببین کار می کنه واسه من؟

    فقط اینکه:
    جدای از اینکه این “نام” و “متن نظر” هر کردم در قالب های مختلف ID های مختلفی واسشون تعریف شده، قالب من واسه “نام” comment-name تعریف کرده بود ولی واسه متن اصلی نظر هیچ ID ای تعریف نکرده بود!!!!

    و مجبور شدم خودم واسش تعریف کنم و اون رو به متغیر های کد اضافه کنم

    روش اضافه کردن این متغیر رو برای اونایی که تعریف نشده، مثل قالب من هم اضافه کنی برای بقیه ی دوستان هم میتونه مفید باشه :)

    البته من آماتور هستم و شاید تعریفش واسم جالب بود، حتما بقیه راحت این کارو با قالبشون کردن ؛)

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

    ممنون بابت معرفی این کد
    موفق باشی

    [پاسخ]

    mEhdi پاسخ در تاريخ مرداد ۱۹ام, ۱۳۸۹ ۱۰:۴۸ ق.ظ:

    Firefox 3.6.8.NETCLR3.5.30729 Windows Vista

    @mEhdi, خیلی ممنونم… :]

    [پاسخ]

  10. محمد رضا ککوزاده گفته است :

    مهر ۷ام, ۱۳۹۰ در ۱۱:۱۳ ب.ظ

    Firefox 5.0.1 Windows 7

    سلام عزیز خیلی جالب هستش دمت گرم خوشم اومد.
    منم این متن و انگلیسی نوشتم کاملا درسته.
    یا علی
    به وب منم سر بزن

    [پاسخ]

  11. امیر گفته است :

    خرداد ۳۰ام, ۱۳۹۱ در ۲:۳۸ ب.ظ

    Firefox 12.0 Windows XP

    سایت ایرانیه بهتره کلماتی که آواهای نزدیک به هم دارند را گوگل قاطی می کنه مثالش قسطنطنیه

    [پاسخ]

  12. reza0 گفته است :

    تیر ۲ام, ۱۳۹۱ در ۶:۱۰ ب.ظ

    Chrome 21.0.1171.0 Windows 7

    salaaaam. man reza hastam va mikham in systemo emtehanesh konam

    [پاسخ]

  13. jalal گفته است :

    خرداد ۱۷ام, ۱۳۹۳ در ۴:۵۰ ق.ظ

    Firefox 29.0 Windows 7

    salam .
    رو فایرفاکس من جواب نداد .

    [پاسخ]

- لطفاً فارسی بنویسید. نظراتی که پینگلیش باشند، تأیید نمی شوند.

- اگر نمی توانید فارسی تایپ کنید، کافیست در بالای کادر متن، گزینه تبدیل خودکار را فعال کنید و پینگلیش بنویسید. نوشته ی شما پس از نوشتن هر کلمه به صورت خودکار به فارسی تبدیل می شود.

- نظر شما پس از بررسی، منتشر خواهد شد. در صورتی که تمایل دارید نظرتان به صورت خصوصی باقی مانده و منتشر نشود، لطفاً ذکر کنید.

- در صورتی که دیدگاه شما در مورد این نوشته نیست از صفحه ارتباط با من استفاده کنید.

پاسخ به نوشته


6 × دو =

به صورت خودکار کلمات فینگلیش را به فارسی تبدیل کن. در صورتی که می‌خواهید انگلیسی تایپ کنید Ctrl+g را فشار دهید.