مترجم گوگل

دی ۲۸م, ۱۳۸۸

همون طور که مطمئنا میدونید مترجم گوگل یکی از ابزارهای قدرتمندیه که توی وب خیلی میتونه کاربردی باشه و کمک کنه. اگه بخواید از این مترجم توی طرف کلاینت استفاده کنید مثلا با کمک جاوا اسکریپت، تقریبا هیچ کاری نداره، چون گوگل API اونو در اختیارتون گذاشته و با افزودن یه سری کد جاوااسکریپت به کد صفحتون، همه چی در اختیار شماست.
اما اگه بخواید از این کد برای طرف سرور استفاده کنید مثلا برای PHP مشکلاتی پیش میاد. چند تا کلاس توی PHPClasses پیدا کردم واسه این کار ولی همه یه روش نسبتا بد داشتن، صفحه مربوط به گوگل رو میخوندن، درخواستو میفرستادن و بعد هم در نهایت صفحه بازگشتی رو بررسی میکردن برای جواب که اصولا روش خیلی بدیه! اگه گوگل یه تغییری تو صفحه بده (که داد)‌ دیگه اون کدها کار نمیکنن.
این شد که نشستم و یه کد واسه این کار نوشتم، یه کد که خیلی ساده به وب سرویس اصلی درخواست رو ارسال میکنه و پاسخ رو که json هم هست، رو به آرایه تبدیل میکنه و در اختیار قرار میده.
این کلاس برای ارسال درخواست از CURL استفاده میکنه اما در صورت در دسترس نبودن از Snoopy استفاده میکنه. قابلیت شناسایی زبان هم وجود داره که میتونه در مواردی مفید باشه.
این کلاس بالاخره امروز تایید شد و در این آدرس قرار گرفت.
البته دموی این کد رو هم میتونید اینجا ببینید.

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

Open Search – PHP

دی ۲۳م, ۱۳۸۸

خیلی وقت پیش یه کلاسی نوشته بودم برای پیاده سازی پروتکل Open Search . اگه دیده باشید ، بروزر های جدید، مثلا فایرفاکس (همه نسخه ها) و اینترنت اکسپلورر (از نسخه ۷ -گویا- به بعد) یه پنل اضافه کردن به سمت راست بالا برای جستجوی مستقیم تو بعضی موتورهای جستجو.
این پانل میتونه موتورهای جستجوی جدید رو هم قبول کنه،و شما برای اضافه کردن سایت خودتون به این پانل، باید یه فایل XML اضافه کنید به سایتتون و یه سری تگ هم توی قسمت Head صفحه بنویسید. اونوقت کاربر هر وقت که سایت شما رو ببینه اون پانل تغییراتی میکنه که نشون میده که سایت فعلی از قابلیت Open Search پشتیبانی میکنه. و بعد از اون کاربر میتونه موتور جستجوی شما رو هم به لیست اضافه کنه.

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