Steamer Lane Studio技術備忘録WordPress

WordPressのトップページに更新情報(期間内新規投稿)を表示

wordpress WordPressのトップページに更新情報(期間内新規投稿)を表示
作成日: 2024年8月10日

お知らせなどだけでは更新頻度が低いサイトで、他の情報を更新情報としてトップページに表示させるためのコード。
まぁ経験上更新とは記事の追加のみならずってとこもあるので、トップページの内容が変われば(この場合はけっこう大きくだが、内部リンクの加増などもあるからそこそこかな)更新と認識されたこともあるのでお試しで。

<?php// 表示したいカテゴリのスラッグの配列$category_slugs = array('news', 'event');$args = array('category_name' => implode(',', $category_slugs),'posts_per_page' => 5, // 表示する投稿数'date_query' => array(array('after' => '6 months ago', // 半年以内に変更),),);$the_query = new WP_Query( $args );

// 投稿がある場合if ( $the_query->have_posts() ) {echo '<section aria-hidden="false" style="display: block;"><h2>更新情報</h2><div id="newsRwrap">';while ( $the_query->have_posts() ) {$the_query->the_post();?><a href="<?php echo get_permalink(); ?>"><picture><img loading="lazy" src="<?php the_post_thumbnail_url('thumbnail', array('class' => 'alignnone')); ?>" alt="<?php the_title(); ?>" /></picture><h3 class="newsR"><span><?php echo get_the_date('Y年m月d日'); ?></span><?php the_title(); ?></h3></a><?php}echo '</div></section>'; // 入れ子要素の終了wp_reset_postdata();} else {/*対象投稿が無い場合の別の表示処理*/}?>

入れ子とループ内のあれは適当に変える。
お知らせ含んで「お知らせ追加」「何々の記事を追加」などの枕詞を合わせてもいいでしょう。