質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

Q&A

解決済

2回答

3775閲覧

ワードプレスのカスタム投稿のループとシングルページの表示方法

ringoame49

総合スコア46

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

0グッド

1クリップ

投稿2018/01/03 10:06

質問失礼します。

現在Wordpressにてホームページを制作中です。

Wordpressにはもともと投稿が1つ用意されていますが下記サイトを参考に投稿を増やしました。

https://wordpressmatome.com/%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E6%8A%95%E7%A8%BF%E3%81%AE%E8%BF%BD%E5%8A%A0%E3%81%AE%E4%BB%95%E6%96%B9%E3%81%A8%E3%80%81%E5%85%B7%E4%BD%93%E7%9A%84%E3%81%AA%E4%BD%BF%E7%94%A8%E4%BE%8B/

無事に投稿を増やし、その投稿にカテゴリーやタグを持たせることができたのですが、記事の表示やループの表示の方法がわかりません。

普段は下記のようにして表示しています。
しかしカスタム投稿で作ったカテゴリーのID(4&pagedの部分の数字)を変えるだけでは表示されません。
カスタム投稿を使用し、カテゴリーの設定なしで記事を書きこんだ場合のループの表示方法もお分かりの方がいたら知りたいです。
WP-PaegNaviのプラグインを使用しているのですが、同じようにWP-PaegNaviを使用することは可能でしょうか?
また2つ目のカスタム投稿の追加方法もわかりません。

ループを表示させる場合。(特定のカテゴリーのみを表示)(category-スラッグ.php)

<?php $q=new WP_query($query_string . '&posts_per_page=9&cat=4&paged='.$paged); ?> <?php if($q->have_posts()): while($q->have_posts()): $q->the_post(); ?> <a href="<?php the_permalink(); ?>" class="thumnail"></a> <a href="<?php the_permalink(); ?>"> <?php echo mb_substr($post->post_title, 0, 16); ?></a> <?php endwhile; endif; ?> <?php wp_reset_postdata(); ?>

シングルページの表示(single-スラッグ.php)

<section> <?php if (have_posts()) : while (have_posts()) : the_post(); ?> <article id="post-<?php the_ID(); ?>" class="content"> <?php the_title(); ?> <?php the_content(); ?> </article> <?php endwhile;?> <?php endif; ?> </section> <?php if (get_previous_post()):?> <?php previous_post_link('%link','前の記事',TRUE); ?> <?php endif; ?> <?php if (get_next_post()):?> <?php next_post_link('%link','次の記事',TRUE); ?> <?php endif; ?> <?php get_sidebar(); ?>

質問したい内容をまとめると以下になります。

1.カスタム投稿をfunctions.phpを使用して増やした場合の、それらのsingle-スラッグ.phpやcategory-スラッグ.phpでの表示方法。

2.2つ目のカスタム投稿の追加方法もわかりません。

3.カスタム投稿を作った際、カテゴリーなしで記事を書いた場合のsingle-スラッグ.phpやcategory-スラッグ.phpの表示方法
これは単にスラッグの部分をカスタム投稿タイプ名にすればいいのでしょうか。

4.WP-PaegNaviは正常に動作するか。

以上になります。

質問ばかりですが、ご存じの方がいらっしゃいましたらご教授いただければ幸いです。

宜しくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

質問1-4部分に回答します。

  1. テンプレート階層を確認して、適切なものを使用してください。カスタムタクソノミーはカテゴリではありませんので taxonomy-{taxonomy}.php を使用することになります。
  2. わからないならプラグインを使用されては。Custom Post Type UI であれば出力用コードも取得できます。
  3. テンプレート階層を確認してください。
  4. カスタムタクソノミーなど通常の記事取得に関してはテンプレート上でWP_Queryを使わず、通常のループ if (have_posts()):while (have_posts()):the_post();endwhile;endif; で取得するほうが問題が起きにくいと思います。その場合、WP-PaegNaviで問題なくページングが可能です。

【[WordPress] テンプレートファイルの階層・優先順位 | ぶぶりんブログ】
http://buburinweb.wp.xdomain.jp/wordpress-template-faile

【Custom Post Type UIの使い方[WordPress]】
http://kotori-blog.com/wordpress/custom_post_type_ui/

投稿2018/01/07 06:40

kei344

総合スコア69398

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

1.カスタム投稿をfunctions.phpを使用して増やした場合の、それらのsingle-スラッグ.phpやcategory-スラッグ.phpでの表示方法。

WP_Queryクラスやget_posts()関数を使用して投稿を取得します。

  • get_posts()を使用したサンプルコード

PHP

1<?php 2 $args = array( 3 'posts_per_page' => 10, 4 'post_type' => 'カスタム投稿のスラッグ', 5 'category' => '', // カテゴリIDを指定 6 ); 7 $posts = get_posts($args); 8 if ($posts) : 9 foreach ($posts as $post) : 10?> 11// ここに記事のHTML 12<?php 13 endforeach; 14 endif; 15?>

2.2つ目のカスタム投稿の追加方法もわかりません。

functions.phpに追記したコードを複製してカスタム投稿タイプ名を変更します。

3.カスタム投稿を作った際、カテゴリーなしで記事を書いた場合のsingle-スラッグ.phpやcategory-スラッグ.phpの表示方法

これは単にスラッグの部分をカスタム投稿タイプ名にすればいいのでしょうか。

1と同じ方法で可能です。

4.WP-PaegNaviは正常に動作するか。

wp_pagenavi()のパラメータに現在のループクエリを渡せば可能です。

PHP

1wp_pagenavi(array('query' => $posts));

投稿2018/01/04 01:16

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問