0

http://wordpress.org/extend/plugins/simple-timed-plugin/

この関数を使用して、期限切れの投稿を消す (削除しない):

<?php if (function_exists('simple_timed_content')) : ?>
<?php if (simple_timed_content("offdate=20120309 offtime=2350")) : ?> 
 Some content goes here 
<?php endif; ?> <?php endif; ?>

次のようなカスタム フィールドの日付として使用したい:

 <?php if (simple_timed_content("offdate='$end_date' offtime='$end_time'")) : ?>

ここで: `

$end_date=date( 'Ymd', strtotime( get_post_meta( $Post->ID, "_EventEndDate", true),     time()));`

$end_time=date( 'HM', strtotime( get_post_meta( $Post->ID, "_EventEndDate", true), time()));`

Ymd HM (20120309 2350) これが機能するための完全なコードはどのようになりますか?

私の他のオプションは、私が見つけたこのコードを使用することです:

www.rockia.com/2010/01/modify-you-wordpress-theme-to-enable-an-expiration-for-your-posting

しかし、それは私のものではうまくいかないようです

www.wordpress.org/extend/themes/bombax

ループはsingle.phpファイルにあります

誰かが助けてくれれば幸いです。私はphpが初めてです。前もって感謝します

4

1 に答える 1

0

私は以下のこの試みを達成するための別の方法を持っています

テーマを編集し、現在の WordPress ループを次の「ハッキングされた」ループに置き換えます。

<?php
if (have_posts()) :
     while (have_posts()) : the_post(); ?>
         $disappeartime = get_post_custom_values('disappear');
         if (is_array($disappeartime)) {
             $disappearstring = implode($disappeartime);
         }

         $secondsbetween = strtotime($disappearstring)-time();
         if ( $secondsbetween > 0 ) {
             // For exemple...
             the_title();
             the_excerpt();
         }
     endwhile;
endif;
?>

日付/時刻が消える投稿を作成するには、カスタム フィールドを作成するだけです。キーとして消えて、値として日付/時刻(形式: mm/dd/yyyy 00:00:00)を指定します。そのタイムスタンプ以降、投稿は表示されません。

于 2012-03-10T19:35:17.490 に答える