1. HOME > 
  2. ブログ・お知らせ > 
  3. WordPress > 
  4. WordPressで未来日時の投稿をすぐ公開する

ライラックミモザのブログ・お知らせ

2012年10月23日

WordPressで未来日時の投稿をすぐ公開する

WordPressのカスタム投稿タイプを使って、イベントの開催や製品の発売の告知記事を作る機会があったので、その備忘録です。
今回の要件は
「将来的に、開催日時や発売日時で記事を管理したいため、記事の公開日時を、記事を書いた日時ではなく、開催日時や発売日時で登録したい」
というものでした。

通常、未来日時の投稿は、ステータスが「予約済み」となり、その日時まで公開されません。
それでは、開催や発売の案内を前もってできないので、未来日時の投稿をすぐに公開する必要がありました。

そこで、下記の記事がとても参考になりました。ありがとうございます!
【WordPress】未来の投稿日でも公開できるようにしたい

プラグインもあるようですが、今回はfunctions.phpに上記の記事からソースコードを記述しています。
下記のソースコードは引用です。

/**
* 特定のカスタムポストタイプ(例:event)の予約投稿(future)があったら、問答無用で公開(publish)にする
*/
function my_immediately_publish($id) {
global $wpdb;
$q = “UPDATE ” . $wpdb->posts . ” SET post_status = ‘publish’ WHERE ID = ” . (int)$id;
$wpdb->get_results($q);
}
add_action(‘future_event’, ‘my_immediately_publish’);

私の場合、最終行にある「future_event」の「_event」を、実装したいカスタム投稿タイプ名に変更し、未来日時の投稿をすぐに公開できるようになりました。

あらためて、上記の記事を書いてくださった「softelメモ」さんに感謝いたします!

ブログ・お知らせトップへ