web-dev-qa-db-ja.com

期限切れの投稿はありません

投稿を自動的に期限切れにする(削除するか下書きにする)ことで問題が発生します。試行したすべてのプラグインは何もせず、予定時間に達すると何も起こらないので、おそらく簡単なことを続けます。見下ろす..

私は私がwp-cronに問題があるかもしれないと思ったが、私は将来wordPressを介して発行日を設定するのに問題があるようには思えない。

私はWordpressの最新バージョンを実行していて、マルチサイトがセットアップされています。すべてのプラグインは現時点で入手可能な最新バージョンでした。

誰か何かアイデアがありますか?試してみることが足りなくなりました...

前もって感謝します

タフト

1
Tafts

Post Expiratorプラグインを使用しても動作しましたが、これも同じ問題を抱えていましたが、 'the_post();'の直後の各ループに次のコードを追加しています。それは各ページロードの投稿ステータスをチェックします、それはしばらくの間うまくいくように思われる一時的な解決策です。

// check to see whether post has expired
$expiration = get_post_meta($post->ID, "expiration-date", true);
if ($expiration && (time() > $expiration)) {
    $postSettings = array(
        'post_status' => 'draft'
    );

    wp_update_post($postSettings);
} else {
// normal content goes here
}
1
Tafts

これらの投稿に対してexpiresという名前のカスタムフィールドを作成します。値は投稿を無効にする日付です。テーマのループに次のコードを使用してください。

//Loop-Start
if (have_posts()) : while (have_posts()) : the_post();
  $exTime = get_post_custom_values('expires');
  if (is_array($exTime)) {      
  $exString= implode($exTime);
  $seconds = strtotime($exString) - time();
} else {
  $secondes = 1;
}
if ($seconds > 0) {
  echo "<h2>";
  the_title();
  echo "</h2>";
  the_content();
}
endwhile;
endif;

このコードは投稿を削除または起草しません。しかし、正面には見えません。これはあなたの問題に対する可能な解決策ですか?

2
Guru 2.0

私は試したことがあるVA Simple Expires

https://wordpress.org/plugins/va-simple-expires/

かなりうまくいきます。

残念ながらPost Expiratorプラグインは私にとってはうまくいきませんでした。CSV経由でインポートされた投稿は期限切れにならなかったからです。

VA Simple Expiresについて - CSVを使用する場合は、カップルフィールドを追加するだけです。

  • scadenza-enable = 1
  • scadenza-date =目標時間(例:2016-04-10 00:42:00)
0
AlexG