これが可能かどうかはわかりませんが、朝の00:00に投稿を選択し、その投稿を24時間表示するWordpressクエリを作成する方法があるかどうか疑問に思っていました. 翌朝 00:00 になると更新され、別のランダムな投稿がさらに 24 時間表示されます。これは可能ですか?
質問する
233 次
1 に答える
1
WordPress Transients APIとWP_Query クラスを使用して実行できます。
$random_id = '';
if ( false === ( $random_id = get_transient( 'some_random_post_id' ) ) ) {
// The transient expired, so create another
$args = array(
'posts_per_page' => 1, #return one value
'orderby' => 'rand',
'post_type' => 'yourposttype'
);
$single_post_query = new WP_Query( $args );
while( $single_post_query->have_posts() ){
$single_post_query->the_post();
$random_id = get_the_ID();
set_transient('some_random_post_id', $random_id, 60*60*24); # save the ID returned
}
}
//do your stuff with $random_id as the post id.
誰かがあなたのウェブサイトにアクセスしたときに WordPress が一時的に更新するため、正確に 24 時間ではない場合があることに注意してください。また、WordPress 3.5 以降を使用している場合は、 のDAY_IN_SECONDS
代わりに定数を使用できます60*60*24
。
于 2013-04-01T10:54:09.500 に答える