コンサルのこと

WordPressで最新の記事だけを条件分岐させて、大きく見せるなどレイアウトを変更する方法

2018/06/21
 
この記事を書いている人 - WRITER -

ワードプレス記事を作成するときに最新の記事だけを目立たせたい場合の書き方をメモ書きしました。最新の記事は出来るだけ目立たせてアクセスを稼ぎたい!なんて方はこの手順で簡単に変更できますので試してみてください。

 

基本的なループの書き方

WordPressで記事一覧ページを表示させたい場合ループ文と言うものを使用して、記事を指定した回数表示をさせています。

表示数を変更したいときは、サイドメニューの設定→表示設定→1ページに表示する最大投稿数から変更できます。

基本的なループ文

まずは、一般的なループ文の書き方です。

<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
// ループの内容を記述
<?php endwhile; ?>
<?php endif; ?>

index.phpやcategory.phpなど記事一覧を表示する場合、上記ループ文を書き、ループの内容に表示させたい内容を記述させることで、表示させる内容がループして、指定した回数分ページ上に表示されるようになります。

よく使うテンプレートタグ

ループの内容を記述には以下のようなテンプレートタグが使えます。

//投稿記事のタイトルを取得して出力
<?php the_title(); ?>

//投稿記事の本文を取得して出力
<?php the_content(); ?>

//投稿記事のURLを取得して出力
<?php the_permalink(); ?>

//投稿記事のカテゴリー名を取得して出力
<?php the_category(', '); ?>

//投稿日を取得して出力
<?php the_time('Y/m/d'); ?>

//サムネイル画像を取得して出力
<?php the_post_thumbnail(); ?>

 

ループの書き方や取得できるものは上記の他にもさまざまあり、さらに詳しい内容はこちらの確認してください。

参考 : WordPress Codex 日本語版

ループ文を分岐させる方法

いよいよ今回の本題ですが、ループ文を分岐させるときの記述の仕方を説明します。

<?php if(have_posts()): while(have_posts()): the_post(); $counter++; ?>
<?php if ($counter <= 1): ?><!-- 最初の記事判別 -->
// 最初の記事の内容を記述する
<?php else:?>
// 最初の記事以降のループ処理する内容を記述する
<?php endif;?><!-- /最初の記事判別 -->
<?php endwhile; endif; ?>

 

<?php if ($counter <= 1): ?>

カウンターで最初の記事を判断しています。 < = 1 の文字を変更することで内容をカスタマイズすることも可能です。

最初から3記事目までの3つの表示を変更したい場合。

<?php if ($counter <= 3): ?>

 

3記事目のみ、その1つだけの表示を変更したい場合。

<?php if ($counter == 3): ?>
この記事を書いている人 - WRITER -

- Comments -

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


Copyright© コンサル , 2017 All Rights Reserved.