ピエールの日記 by pierre 長尾和美

ピエールです。SamuraiTraditional(サムトラ)、たけしを(逸見泰典とのユニット)でギターやってます♪思いつきをブログに! ^^v by pierre

WordPress - 固定ページに特定カテゴリーの投稿一覧を表示させる

      2016/11/10

目次

wordpressの固定ページに特定のカテゴリ一覧を表示させる

改めて固定ページに特定カテゴリーの投稿一覧を表示させたいと思って調べてみました。
以前の記事が間違っていたことに気づき、以前の記事を修正しました。
以前の記事

こちらの記事を参考に、というかまるまるそのままやってみちゃった感じですが。。
http://gladdesign.net/2011/12/03/wordpress-page-category-specification/

wordpressの固定ページに特定のカテゴリ一覧を表示するには
・固定ページ内でphpが使えるようにする。
・phpファイルを作成する。(ここではmusic.phpとしました。)
・固定ページ内でにphpを使う。(インクルードさせる。)
という手順が必要。

固定ページ内でphpが使えるようにする。

固定ページ内でphpが使えるようにするにはfunctions.phpにコードを追記します。
functions.phpはWordpressの管理画面から「外観」→「テーマ編集」と選択すれば編集ページに行けます。

functions.php内に下記の「ここから」「ここまで」を貼り付けます。
自分は一番下に追記しました。


<?php
 
//ここから
function Include_my_php($params = array()) {
    extract(shortcode_atts(array(
        'file' => 'default'
    ), $params));
    ob_start();
    include(get_theme_root() . '/' . get_template() . "/$file.php");
    return ob_get_clean();
}
 
add_shortcode('myphp', 'Include_my_php');
//ここまで
 
?>


phpファイルを作成する。

phpファイルを作成します。
作成したらftpで下記フォルダに放り込みます。
(下記は自分のStingerの場合になります。wp-contentの中の自分が使ってるテーマの下ですね。)

.../wp-content/themes/stinger3

名前はなんでも良いのですが、自分は「music.php」としました。
・2行目の category_name=○○ にカテゴリースラッグを、showposts=○ には表示させる件数を入れます。
・7行目は、記事タイトルを表示し、その記事へリンクさせる記述です。


<div>
  <?php $blog_posts = query_posts('category_name=music&showposts=10');
  foreach($blog_posts as $post): ?>
  <p><a href="<?php echo get_permalink($post->ID); ?>"><?php echo $post->post_title; ?></a></p>
  <?php endforeach; ?>
</div>

固定ページ内でにphpを使う。

固定ページ内に下記ショートコードを記述します。
(ファイル名が music.php の場合です。)

[myphp file='music']

以上。
これで固定ページに一覧も表示できますし、本文にもいろいろ書けるようになりました。

今回「固定ページ」にphpを使う。
というところがポイントでした。
これは「固定ページ」に限らず「投稿ページ」でもできるようです。
phpを使うという設定はこれですみましたので、「固定ページ」や「投稿ページ」にショートコードを記載すれば良いだけですね。

再度ですがこちらのページにお世話になりました。
http://kawatama.net/web/wordpress/1123

やってみたページがこちら。
自分の場合は記事タイトルとリンクだけですね。。
本当はサムネイルとか付けたいのですが。。。
ここの表示をカスタマイズする場合はmusic.phpを修正すれば良いですね。

20141008001

参考記事としてもう一つ。
こちらのホームページでは参考となる方々のリンクもいっぱい貼ってあるので、よりカスタマイズしたい方は参考にすると良いと思います。
http://gladdesign.net/2011/12/03/wordpress-page-category-specification/

 - wordpress