WPの

~ワードプレス関連~

サクッと複数ループのコピペと解説|WordPressの使い方

      2020/04/25

WordPressで複数の投稿ループを表示させる

最初の1記事だけ詳しいループのコピペ

have_posts() ) : while ( $query1->have_posts() ) : $query1->the_post(); ?>
term_id ) . '">' . $category->cat_name . '';
}
?>

post_content, 'UTF-8' ) > 180 ) { $content = str_replace( '\n', '', mb_substr( strip_tags( $post->post_content ), 0, 180, 'UTF-8' ) ); echo $content . '...'; } else { echo str_replace( '\n', '', strip_tags( $post->post_content ) ); } ?>

続きを読む >

投稿がありません。

have_posts() ) : while ( $query2->have_posts() ) : $query2->the_post(); ?>

投稿がありません。

1個目のクエリは$query1、2個目のクエリは$query2と変数名を変えている。
ループの終了時には必ずwp_reset_postdata();を入れるのがルール。

カテゴリーは、最初の1つだけをリンク付きで出力。
さらに、

category_nicename . '" />';
if ( $category ) {
echo '' . $category->cat_name . '';
}
?>

で、カテゴリーを囲むSPANタグにカテゴリースラッグ名でクラスを付与できます。

本文は、文字数をmb_strlenでチェック。
strip_tagsでHTMLタグを取り除く。
180文字を超えていたら、mb_substrで超過分の文字を切り取り。
str_replaceで\n(改行)を取り除く。

ループの開始と終了

ループ開始前に条件(クエリ)を作成↓

クエリパラメータについては「WP_Queryループ クエリパラメータの書き方」で紹介。

ループの開始↓

have_posts() ) : while ( $query1->have_posts() ) : $query1->the_post(); ?>

投稿タグ↓

テンプレートタグについては「WP_Queryループ 投稿タグの書き方」で紹介。

ループの終了↓


投稿がありません。

WP_Queryループ クエリパラメータの書き方

パラメーターが複数の場合は、「 & 」で区切る。

ページあたりの表示件数

10件を表示↓

全件を表示↓

3件を飛ばす↓

2件を飛ばして、5件を表示↓

特定の分類IDを指定(カテゴリー、タグ、投稿者)

除外したい場合は、IDの前に「 マイナス」を付ける。例:cat=-8
複数の場合は、IDを「 , カンマ」で区切る。例:cat=8,12

カテゴリーを指定↓

タグを指定↓

投稿者を指定↓

特定の投稿ページ、固定ページを指定

投稿ページを指定↓

固定ページを指定↓

参考:関数リファレンス/WP Query

WP_Queryループ 投稿タグの書き方

タイトルを出力

タイトル↓

本文を出力

本文↓

投稿日を出力

投稿日↓

the_dateを使うと、同日に複数投稿した場合、2つ目の投稿の日付が省略されて出力されない。
回避するにはthe_timeを使います。

カテゴリーを出力

カテゴリー↓

デフォルトでは、ULリストで表示されます。
使いにくい場合には、カンマで区切る形式に変更します。

タグを出力

タグ↓

デフォルトでは、Tags:が先頭に表示されます。

リンクを出力

リンク↓

アイキャッチ画像を出力

アイキャッチ画像↓

サイズは「 thumbnail 」「 medium 」「 large 」「 full 」。
任意のサイズは、以下のように指定。

参考:テンプレートタグ

[/fusion_builder_column][/fusion_builder_row][/fusion_builder_container]

 - WordPress, テンプレートファイル ,