0

次のコードを使用して、Wordpress で過去の投稿を非表示にしています (日付は、作成した日付というカスタム フィールドからのものです) - 問題は、今日の日付に設定されたものも非表示にしていることです。

<?php query_posts($query_string.'&posts_per_page=24&order=desc&orderby=meta_value&meta_key=date'); ?>

<?php  while (have_posts()) : the_post();
$date = get_post_meta($post->ID, 'date', true);
if ($date){
$mydate = "$date";
echo date('l, j F, Y', strtotime($mydate));

}
?>

カスタムフィールドが今日の日付である投稿を許可する方法はありますか?

ありがとう!

4

2 に答える 2

0

あなたの質問に対する具体的な答えはありませんが、あなたがやろうとしていることを正確に行うプラグインが 2 つあります。以下にそれらをリンクしました。

  1. シンプルな有効期限 http://wordpress.org/extend/plugins/simple-expires/

  2. ポストエクスパイレーター http://wordpress.org/extend/plugins/post-expirator/

どちらもまさにあなたが達成しようとしているもののようです。

これが役立つことを願っています。

于 2011-06-23T00:59:42.117 に答える
0

私はこれを使用することになった..

<?php      while (have_posts()) : the_post();
//to check against expiration date; 
$currentdate = date("Ymd");
$expirationdate = get_post_custom_values('date');
if (is_null($expirationdate)) {
$expirestring = '30005050'; //MAKE UN-EXPIRING POSTS ALWAYS SHOW UP;
} else {
if (is_array($expirationdate)) {
$expirestringarray = implode($expirationdate);
}
$expirestring = str_replace("/","",$expirestringarray);
} //else
if ( $expirestring >= $currentdate ) { ?>

loop goes in here

<?php } ?>

正直なところ、どこで見つけたのか覚えていませんが、誰かがそれをきちんと整理できれば、それは素晴らしいことです!

于 2011-06-23T08:24:55.067 に答える