رفتن به مطلب

سمت سرور کردن کد انقضا پست ها


پست های پیشنهاد شده

سلام دوستان

من میخوام برای پست ها انقضا بذارم اما افزونه های موجود همشون با wp-parsidate مشکل دارن

توی نت گشتم این کد رو پیدا کردم عالی هستش و میلادی بودنش هم قابل تحمل هست اما مشکل جدیش اینه که سمت کاربر هست

آیا میشه سمت سرور کرد این کد رو !؟


<?php
if (have_posts()) :
while (have_posts()) : the_post(); ?>
$expirationtime = 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;
?>

و یا آیا کد بهتری که سمت سرور باشه سراغ دارید یا افزونه ای که با wp-parsidate مشکل نداشته باشه !؟

یه راه حل بهم نشون بدین لطفا

لینک به ارسال

کد php سمت سرور هست

در کد هم داده‌ای مربوط به کاربر نیست

البته کد هم درست نیست

پست رو مخفی میکنه تا اینکه وضعیت رو تغییر بده

تست کنید

http://wordpress.org/plugins/post-auto-expire-control/

http://wordpress.org/plugins/tieexpire-automated-post-expiry/

http://wordpress.org/plugins/post-expirator/

  • امتیاز 2
لینک به ارسال

مشکل مخفی کردن نیست اما این کد تاریخ و زمان رو از کامپیوتر کاربر میگیره منظورم این بود

لینک به ارسال

مشکل مخفی کردن نیست اما این کد تاریخ و زمان رو از کامپیوتر کاربر میگیره منظورم این بود

در PHP توابع خاصی سمت کاربر اجرا میشوند

تابع time هم سمت سرور هست

  • امتیاز 1
لینک به ارسال

حالا این کد رو میشه کاری کرد که به جای استفاده از تاریخ میلادی از تاریخ شمسی wp-parsidate استفاده کنه ؟


<?php
if (have_posts()) :
while (have_posts()) : the_post(); ?>
$expirationtime = 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
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;
?>

مقدار تاریخ دارای چنین قالبی باشد:

1392-05-10

  • امتیاز 2
لینک به ارسال

این آموزش دیدید؟؟

http://wpu.ir/8b30t

این همون کد هست اما برای تاریخ خورشیدی

لینک به ارسال

کد تست شده است

آقا پارسا این اررو رو میده داخل div :


Warning: preg_match_all() expects parameter 2 to be string, array given in /home4/persiafr/public_html/wp-content/plugins/wp-parsidate/lib/parsidate.php on line 240

درستش کردم فدات :wub:

تاپیک بسته شد !

ویرایش شده توسط ژیهات
لینک به ارسال

لطفا برای ارسال دیدگاه وارد شوید

شما بعد از اینکه وارد حساب کاربری خود شدید می توانید دیدگاهی ارسال کنید



ورود به حساب کاربری
×
×
  • اضافه کردن...