[WordPress] WPページ内に任意の記事を表示させる方法

2006年11月17日 金曜日 15時11分
E-Mail This Post/Page Print This Post/Page

デフォルトの WordPress の仕組みではWPページには、投稿記事が表示できないようになっています。これをトップページやアーカイブのページのように、あらかじめ指定したカテゴリーから特定数の記事をリストアップさせるカスタマイズを紹介します。

こちらの記事で、WPページとカテゴリーを連動させてサイドバーなどにアーカイブのタイトルをリストさせる方法を紹介しました。今回は、同様にページをカテゴリーのように扱っている場合に、そのページのカテゴリーに関連した記事を表示させてみます。

前提条件として、投稿スラッグ名がそれぞれ同じ場合に、そのカテゴリーのエントリーをWPページ内に表示させます。もしスラッグ名が違うと何も表示させません。なおこのカスタマイズは、パーマリンクをNumerioc,(記事ナンバーに基づく表示)で有効です。

まず theme のテンプレートに新しいファイルを追加します。ここでは post.php とします。この post.php にWPページ内に表示させたい記事を取り込みます。 以下のコードを追加します。yoursite.jp/wordpress の部分をワードプレスがインストールされているディレクトリのパスに変更します。<?php if (have_posts()) : ?>以降はお使いのテンプレートのループのコードを使用してください。

PHP:
  1. <?
  2. define('WP_USE_THEMES', false);
  3. require('yoursite.jp/wordpress/wp-blog-header.php');
  4.  
  5.  gs_llc($_GET[cat_id],$_GET[num_d]); ?>
  6.  
  7. <?php function gs_llc($cat_id=2, $num_d=5) {
  8. $param = 'category_name=' . $cat_id . '&showposts=' . $num_d;
  9. query_posts($param); ?>
  10. <?php if (have_posts()) : ?>
  11. <?php while (have_posts()) : the_post(); ?>
  12.  
  13. <div class="post" id="post-<?php the_ID(); ?>">
  14. <h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title(); ?>"><?php the_title(); ?></a></h2>
  15. <?php the_content('続きを読む >>;'); ?>
  16. </div>
  17. <?php endwhile; ?>
  18. <?php else : ?>
  19. <?php endif;
  20. } ?>

そして、ページテンプレート、 page.php に以下のコードを追加します。$num_d = '1'; の 1 を表示させたい記事の数に設定する必要があります。require() のアドレスを自分の使用している、テーマのURLにします。

PHP:
  1. <?
  2. $cat_id = $pagename;
  3. $num_d ='1';
  4. require("http://yoursite.jp/wordpress/wp-content/themes/yourtheme/posts.php?cat_id=$cat_id&num_d=$num_d");
  5. ?>

ここで、require(TEMPLATEPATH."/posts.php"); とするとサーバ側からのスクリプトパスになり、GET メソッドが使用できないので、URLを使用するようにします。

Share This

この記事に関連する NEWS

この記事に関連するトピック

このエントリーへの Yahoogle Suggestions

Trackback this Post |

 

記事ヒット TOP 10

WordPress Tips from Social Bookmarks Jp

    There is no entries available for this category.

WordPress Tips from Social Bookmarks

    There is no entries available for this category.

WordPress Plugins from Social Bookmarks

    There is no entries available for this category.

Tag Cloud

admin Admin Drop Menus Admin Memo Admin Panel advanced drop menus array unique blog cron dabeya Dagon Design Sitemap Generator dropcap Edit N Place error Feedburner game google hack html HTML CSS Internet NEWS Permalink Redirect PHP phpBB2 plugin RSS scripts search stattraq template the content Ultimate Tag Warrior Web Management Windows XP Wordpress WP Plugins WPページ  拡張子 カスタマイズ カスタム関数 カテゴリー コード セキュリティ タグ トップページ トラックバック フィード 投稿 抜粋 日本語 時刻 時間 正規表現 表示 記事

サイト メニュー

Blogtimes image
ぱそずき :D)‐く © 2008
Close
E-mail It