خیلی وقتها توی سایتمون مطالبی میزاریم که دوره زمانی داره ، مثلا تو یه سایت خبری ، یه خبر موقت میخوایم بزاریم که بعد از چند ساعت حذف میشه ، یا میخوایم یه تخفیف رو بصورت موقت اطلاع رسانی کنیم ، خب نیاز هست بعد از چند روز این خبر موقت یا این تخفیف چند روزه رو از لیست مطالب سایتمون حذف کنیم ، خب اگه بخوایم بصورت دستی حذف رو انجام بدیم ممکنه زمان بر باشه.
من خودم با استفاده از کد زیر تونستم این مشکل را حل کنم ، با قرار دادن این قطعه کد در حلقه loop در فایل post.php زیر نوشته جدید در وردپرس بخش زمینه های دلخواه گزینه تاریخ انقضا اضافه میشه ، که میتونین اونجا یه تاریخ تنظیم کنین:
[php]
<?php
if (have_posts()) :
while (have_posts()) : the_post();
$expirationtime = gregdate(“Y-m-d”,get_post_custom_values(‘expiration’));
if (is_array($expirationtime)) {
$expirestring = implode($expirationtime);
}
$secondsbetween = strtotime($expirestring)-time();
if ( $secondsbetween > 0 ) {
// For example…
the_title();
the_excerpt();
}
endwhile;
endif;
?>
[/php]
حالا برای پست هایی که میخواین بعد از مدت زمان خاص نمایش داده نشه از قسمت زمینه دلخواه به صورت زیر زمان مورد نظرتونو وارد کنین
نام زمینه دلخواه :expiration
مقدار زمینه دلخواه :
۱۳۹۲-۰۵-۱۰
البته با افزونه ها هم میشه اینکار کرد ، در لیست زیر نمونه ای از افزونه ها که چنین کاری رو برامون انجام میدن رو ارسال کردم :
ولی تجربه شخصی من میگه تا میتونین از افزونه های کمتری استفاده کنین ، هم به سرعت سایت کمک کردین و هم از نظر امنیتی پیشنهاد نمیشه
امیدوارم مطلب براتون مفید باشه ، اگه سوالی داشتین تو بخش نظرات سوال کنین ، ما درخدمتیم