سلام به همه ی برو بچه های وردپرس کار عزیز…
حتما شما هم به سایت هایی مواجه شدید که زمان انتشار مطالبشون رو به صورت” انتشار در 15 روز قبل ” به نمایش قرار میدند! (مثلا همین فیس بوک مخوف! 😀 )
خوب این کار با چند کد ساده قابل انجام هست.
کد زیر زمان انتشار مطلب رو بصورت ( انتشار در 15 روز پیش ) به نمایش قرار میده:
<?php $days = round((date('U') - get_the_time('U')) / (60*60*24)); echo "منتشر شده در " . $days . " روز پیش"; ?>
کد زیر یکم نسبت به کد بالا کمی تا قسمتی ابری پیشرفته تره مثلا شما می تونید بگید اگر پست امروز منتشر شده بود بگه ( انتشار در امروز ) و اگر در یک روز پیش منتشر شده بود بگید ( انتشار در دیروز ) و اگر مثلا در 10 روز پیش منتشر شده بود خروجی مثل خروجی کد بالا داشته باشه!
<?php $days = round((date('U') - get_the_time('U')) / (60*60*24)); if ($days==0) { echo "امروز منتشر شد"; } elseif ($days==1) { echo "دیروز منتشر شد"; } else { echo "منتشر شده در" . $days . " روز پیش"; } ?>
کد سوم بصورت زمان انتشار مطلب رو نشون میده مثلا ( 10 دقیقه پیش ) . برای استفاده کافیه کد زیر رو در فایل functions.php پوسته ی خود کپی کنید:
add_filter('the_time', 'timeago'); function timeago() { global $post; $date = $post->post_date; $time = get_post_time('G', true, $post); $time_diff = time() - $time; if ( $time_diff > 0 && $time_diff < 24*60*60 ) $display = sprintf( __('%s ago'), human_time_diff( $time ) ); else $display = date(get_option('date_format'), strtotime($date) ); return $display; }
حالا کد زیر رو در حلقه ی مطلب کپی کنید:
<?php echo timeago(); ?>
به همین راحتی ، به همین خوشمزگی! 😀
سعید
با سلام و خسته نباشید خدمت اساتید من اگر خواسته باشم زمان را به ثانیه به نمایش بدم باید چکاری انجام بدم. بعد هم زمان را به شمسی به نمایش در آورد.
function timeago()
{
global $post;
$date = $post->post_date;
$time = get_post_time(‘G’, true, $post);
$time_diff = time() – $time;
if ( $time_diff > 0 && $time_diff < 24*60*60 )
$display = sprintf( __('%s قبل'), human_time_diff( $time ) );
else
$display = date(get_option('date_format'), strtotime($date) );
return $display;
}
سرزده
دوستان عزیز کدی که دوستمون آقای حاجی محمدی معرفی کردن مشکلی نداره فقط کافیه بعد از else خط زیر رو اضافه کنید
displecho jdate(‘d F y H:i’);
یا به عبارت دیگه خط بالا رو جایگزین خط پایین کنید
ay = date(get_option(‘date_format’), strtotime($date) );
پیشنهاد میکنم این دستور رو به مطلبتون اضافه کنید
محمد
سلاماین کد ها رو کجا باید قرار داد؟
Bahar 10 سال عضو همیار وردپرس
سلام
هر جایی که میخواهید نمایش داده بشن
با احترام
م.حسن
برای کامنت ها چی؟میشه گذاشت؟
bahar 10 سال عضو همیار وردپرس
سلام
خیر
morteza
سلام ببخشید من اسلایدر شبیه به اسلایدر مطالب مرتبط می خواستم
مسعود
کد مسعود جان عالی کار کرد
این کدها فقط شلوغش کردید (ببخشیدا)
روش سوم که اصلا کار نکرد
تاریخ مطالب رو به صورت میلادی نشون میداد
کد اول و دوم فقط مربوط به روز هست ولی اگه مطلب 2 دقیقه پیش منتشر شده باشه چی؟ یا یک ماه قبل چی؟
هیرونا
سلام من از روش سوم استفاده کردم ولی وقتی که یک روز کامل بگذره بعد اون تاریخ ها رو میلادی نشون میده
ممنون میشم راهنمایی کنید
عرفان
سلام
ممنون استفاده کردیم!
لگفا اگه امکان داره اموزش ساخت منو سایت همیار وردپرس رو هم بزارید
منوی بالا اونجا که نوشته تماس با ما،خانه و…
ممنون
مسعود آورد
سلام
توسط کدهایی که من تو این پست گذاشتم هم میشه این کار رو کرد ( http://www.hamyarwp.com/wordpress/%D9%86%D9%85%D8%A7%DB%8C%D8%B4-%D9%85%D8%B9%DA%A9%D9%88%D8%B3-%D8%B2%D9%85%D8%A7%D9%86-%D8%A7%D8%B1%D8%B3%D8%A7%D9%84-%D9%85%D8%B7%D9%84%D8%A8-%DB%8C%D8%A7-%D9%86%D8%B8%D8%B1/ )
ساده تر هم هست که…
سعید
افزونه نداره…؟