WordPress 固定ページに最新の投稿記事を表示する方法
外部サイトからWordPressの最新記事にリンクしたい場合があります。
そのWordPressが普通のブログ記事だけの構成なら、リンク先はサイトのURLにすればよいのですが、「front-page.php」や「home.php」など、何らかの形でトップページを形成している場合、最新記事への直リンクは、ひと工夫必要です。
新しく記事を書く度に最新記事のURLは変わります。常に最新の記事を表示させるURLを作るには・・・
やり方は色々あると思うのですが、今回は下記のようにしました。
1.「single.php」があればコピーし、「page-blogtop.php」を作成する。(なければ新規作成する)
2.ダッシュボードで固定ページを新規作成し、スラッグを「blogtop」にする。
3.1の「page-blogtop.php」で、下記のコードを入力する。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<?php $paged = get_query_var('paged'); //現在のページ番号 $num = 1; //表示件数 query_posts('posts_per_page='.$num.'&paged='.$paged); ?> <?php while ( have_posts() ) : the_post(); ?> <?php get_template_part( 'content', get_post_format() ); ?> //以下、表示の例文 <nav class="nav-single"> <h3 class="assistive-text"><?php _e( 'Post navigation', 'twentytwelve' ); ?></h3> <span class="nav-previous"><?php previous_post_link( '%link', '<span class="meta-nav">' . _x( '←', 'Previous post link', 'twentytwelve' ) . '</span> %title' ); ?></span> <span class="nav-next"><?php next_post_link( '%link', '%title <span class="meta-nav">' . _x( '→', 'Next post link', 'twentytwelve' ) . '</span>' ); ?></span> </nav><!-- .nav-single --> //表示の例文ここまで <?php endwhile; // end of the loop. ?> |
これで、「http://〇〇〇.〇〇/blogtop/」という最新記事への直リンクの出来上がりです。
このやり方の問題点としては、最新記事の個別ページと今回作成したblogtopのページの内容が重複してしまう事ですが、さほど気にする必要もないかと思います。
需要があるかどうか解りませんが、必要な方は是非お試しください^^。
公開日:2016年9月27日
最終更新日:2016年12月15日