مهدی 1668 ارسال شده در بهمن 93 گزارش بازنشر ارسال شده در بهمن 93 سلامقبلا یکی از دوستان گزارش ناهماهنگی افزونه با افزونه سئو وردپرس رو گزارش داده بودکه خوب برطرف شد اما همین مشکل تغییر تاریخ در صورت که بخوایم از استاندارد ISO 8601 استفاده کنیم وجود داره<?php echo get_the_date( 'c' ); ?>تست کردم دیدم اگه افزونه غیر فعال باشه بدون مشکل تاریخ رو نشون میده اما در صورت فعال بودن جدا از فارسی شدن اعداد سبک تاریخ بهم میخوره.ممنون نقل قول لینک به ارسال
Parsa 23463 ارسال شده در بهمن 93 گزارش بازنشر ارسال شده در بهمن 93 در نگارش بعدی حل میشهبرای نمایش تاریخ میلادی میتوانید از$post->post_dateاستفاده کنیدecho date("Y/m/d",strtotime($post->post_date)); 2 نقل قول لینک به ارسال
مهدی 1668 ارسال شده در بهمن 93 مالک گزارش بازنشر ارسال شده در بهمن 93 ممنونبا همین کدتون درست شدecho date("c",strtotime($post->post_date)); نقل قول لینک به ارسال
parrot 12 ارسال شده در تیر 94 گزارش بازنشر ارسال شده در تیر 94 سلامبنده میخوام از همین کدی که دوستمون گذاشتن برای یه پست با ای دی خاص استفاده کنم و فرمت تاریخ به صورت ISO 8601 نمایش داده بشه. تو حالت عادی که ظاهرا هنوز مشکل پابرجاست و اگه از تابع the_date استفاده بشه تاریخ فارسی میشه و فرمتش هم درست نیست. این کدی که رفیقمون گذاشتهdate("c",strtotime($post->post_date))عالیه. فقط مشکل اینه که چجوری باید برای یه پست با ای دی منحصر به فرد استفاده کرد. مثلا من میخوام تو برگه X تاریخ ایزو شده یه پست با ای دی Y رو نشون بدم. چه تغیری باید تو کد اعمال بشه؟ نقل قول لینک به ارسال
Morteza 34190 ارسال شده در تیر 94 گزارش بازنشر ارسال شده در تیر 94 شما کد بالا رو توی حلقه پست بزارید.خروجیش باید درست باشه.اگر نشد post رو گلوبال کنید باید درست نمایش بشه. 1 نقل قول لینک به ارسال
parrot 12 ارسال شده در تیر 94 گزارش بازنشر ارسال شده در تیر 94 شما کد بالا رو توی حلقه پست بزارید.خروجیش باید درست باشه.اگر نشد post رو گلوبال کنید باید درست نمایش بشه.سلامخداراشکر پاسخ ارسال شد. خب اگه میتونستم از حلقه استفاده کنم که حل بود. بنده میخوام تاریخ پست یه ای دی خاص رو تو یه جایی از سایت نمایش بدم. باید ای دی پست رو بگیره و تاریخ رو برگردونه. به صورت پیشفرض و با توجه به مستندات خود ورپرس اینکار به سادگی امکان پذیره و تاریخ ایزو شده رو نمایش میده و مشکلی نیست، ولی زمانی که افزونه شما فعال بشه هم تاریخ فارسی میشه و هم از اون فرمت استاندارد خارج میشه؟ راه حل؟ تاکید میکنم بنده تمایلی به استفاده از حلقه ندارمضمنا ببینید سال 93 یه دوستی همین مشکل رو داشتن و فرمودید "در نگارش بعدی حل میشه" اما همچنان مشکل پابرجاست در صورتی که از اون موقع دو یا سه بروزرسانی افزونه انجام شده و مشکل پابرجاست. نقل قول لینک به ارسال
Morteza 34190 ارسال شده در تیر 94 گزارش بازنشر ارسال شده در تیر 94 چون هوک های وردپرس برای تاریخ ها محدود هست هنوز این مورد حل نشده.شما کدتون رو بدید تا بررسی و تصحیح کنم. نقل قول لینک به ارسال
parrot 12 ارسال شده در تیر 94 گزارش بازنشر ارسال شده در تیر 94 سلامممنون. این کد بنده:get_the_date( 'c' , $post_id);خب کد بالا درست تاریخ رو نشون میده و بر اساس ای دی پست تاریخ مورد نظر به صورت ایزو شده رو به من نشون میده. اما افزونه شما که فعال باشه تاریخ فارسی میشه و از فرمت ایزو خارج میشه. من میخوام تاریخ لاتین و با فرمت ایزو باشه. ای دی پست هم خیلی مهمه و میخوام تاریخ یه پست خاص رو به صورت ایزو نمایش بدم. شما هر راهی که میتونه به من کمک کنه رو مطرح کنید. نقل قول لینک به ارسال
Morteza 34190 ارسال شده در مرداد 94 گزارش بازنشر ارسال شده در مرداد 94 شما این تابع رو استفاده کنید درست نمایش میده:function wpp_iso_8601($post_id){ $getPostID = $wpdb->get_col(" SELECT post_date FROM $wpdb->posts WHERE post_status = 'publish' AND post_type = 'post' AND ID = '$post_id' "); $user_tz = 'America/Los_Angeles'; $schedule_date = new DateTime($getPostID[0], new DateTimeZone($user_tz) ); $schedule_date->setTimeZone(new DateTimeZone('UTC')); $triggerOn = $schedule_date->format('c'); return $triggerOn;}نکته اینکه میتونید تایم زون رو خودتون رو هر چی نیاز هست ست کنید. 3 نقل قول لینک به ارسال
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .