ジャンクワードの森

404 Not Foundページ(404.php)に最新記事のリストを表示するには「WP_Query」を使えばいい模様

2013-07-09[WordPress

当サイトではアフィリエイト広告を利用しています。

サイトをリニューアルした際にどうしてもURLを変更or削除しなくてはいけないと時は結構あって(ブログよりもサイトに多い感じ)、その場合404 Not Foundページにアクセスしてもらうことになります。
404

で、せっかくのアクセスですから、該当記事がなくても最新記事への誘導はしたいな、、、
なんて思うのが人情ですが、WordPressの404 Not Foundページで最新記事を出すには少しだけ工夫が必要になってきます。


このエントリーをはてなブックマークに追加

ということで、404 Not Foundページ(テンプレートでは404.php)に最新記事のリストを表示する方法を説明したいと思います。

ん、、、
なんかニッチなところの話な気はしますが、404 Not Foundページはかなり重量なページなのでサイトを制作した際には必ず設置したほうがいいですよ(ちなみに、404.phpがない場合はindex.phpにアクセスすることになります)。

余談が長くなりそうな雰囲気になってきたので、ここは省いて先に行きます^^

使う関数は「WP_Query」

細かいことはいいとして(段々雑になってきた)、実際に使ったコードはこれ

[php]<?php $my_query = new WP_Query(‘posts_per_page=25&cat=4′ );?>
<?php while ($my_query->have_posts()) : $my_query->the_post(); ?>
<div class="box">
<h3 class="title"><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h3>
<a href="<?php the_permalink() ?>"><?php echo get_the_post_thumbnail($page->ID,’top_thumbnail’); ?></a></div>
<?php endwhile; ?>[/php]

「posts_per_page=25」で表示する記事の件数を
「cat=4」で表示するカテゴリーのidを設定しています。

[php]<div class="box">~</div>[/php]
はデザイン的な部分なので、サイトによって変更する必要があります。
もしカテゴリーを絞らないのであれば「&cat=4」を削除すればOKです。

通常、表示数やカテゴリーの設定には「query_posts関数」を使いますが、この子はWordPress ループだけを変更するためのものになっているため、WordPressのループの外にある、404 Not Foundページでは使わないほうがいいそうです。

→WordPressのループをみて記事がないから、404 Not Foundページにきているため

ということで、404 Not Foundページに最新記事のリストを出したい場合は「WP_Query関数」を使ってください。

<参考(というより丸パクリ)>
WordPress > フォーラム > [解決済み] 404.phpで最新の投稿3件を表示できない。

Sponsored Links

同じカテゴリの最新記事

運営者情報など

運営サポート

35-45 WOMAN

35-45WOMAN(サンゴーヨンゴーウーマン)は、「カッコいいけど身近」な女性向けWEBマガジン。

デザインとかコーディングとか、WordPressの構築とか裏側の部分を一通りやらせていただいています。

ブログ更新のアイテムとかスキルとか