Notice: A non well formed numeric value encountered in /home/webatoir/public_html/wp-content/plugins/crayon-syntax-highlighter/crayon_formatter.class.php on line 118

Notice: A non well formed numeric value encountered in /home/webatoir/public_html/wp-content/plugins/crayon-syntax-highlighter/crayon_formatter.class.php on line 119

Notice: A non well formed numeric value encountered in /home/webatoir/public_html/wp-content/plugins/crayon-syntax-highlighter/crayon_formatter.class.php on line 118

Notice: A non well formed numeric value encountered in /home/webatoir/public_html/wp-content/plugins/crayon-syntax-highlighter/crayon_formatter.class.php on line 119

Notice: A non well formed numeric value encountered in /home/webatoir/public_html/wp-content/plugins/crayon-syntax-highlighter/crayon_formatter.class.php on line 118

Notice: A non well formed numeric value encountered in /home/webatoir/public_html/wp-content/plugins/crayon-syntax-highlighter/crayon_formatter.class.php on line 119

سلام و درود

یکی از نکاتی که توی طراحی قالب وردپرس برای سایت های چند زبانه حائز اهمیت هست، تغییر تاریخ متناسب با زبان انتخابی توسط کاربر هست.

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

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

من برای این کار یک روش ساده رو توضیح میدم اما براحتی میتونید اون رو توسعه بدید و حرفه ای تر اش کنید.

وقتی پلاگین WPML رو روی سایت نصب کردید و سایت رو چند زبانه کردید کافیه توی فایل functions.php یک تابع تعریف کنید که ساختار تابع زیر رو داشته باشه :

توی این تابع ما به کمک یک ثابت به نام ICL_LANGUAGE_CODEکه متعلق به پلاگین WPML هست، چک میکنیم که اگر زبان سایت فارسی نبود تاریخ بصورت میلادی برگردانده شود و در غیر این صورت بصورت شمسی ..

دقت داشته باشید که حتما پلاگین WPML می بایست نصب و فعال شده باشد.

حالا هر جا که میخواید تاریخ رو نمایش بدید این تابع رو صدا میزنید و مثلا اینطوری مقدار میدید بهش ( برای مثال توی حلقه ی نمایش پست ها ) :

دقت داشته باشید که تاریخی که به تابع میدید باید بصورت Unix Timestamp باشه و به همین خاطر ما در زمان گرفتن تاریخ پست، ورودی اون رو U در نظر گرفتیم تا تاریخ رو بصورت Timestamp بهمون بده.

امیدوارم که این نکته برای شما مفید باشه.


محمد صالحی

محمد صالحی هستم توسعه دهنده نرم افزار و مدیر پروژه در حال حاضر به عنوان بنیان گذار و توسعه دهنده وب دارم روی استارتاپ ایویس کار میکنم که در حوزه رزرو مکان رویداد و جلسات فعالیت میکنه امیدوارم مطالب بلاگ براتون مفید باشه

۰ دیدگاه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *