Lightningの前の記事・次の記事をとことんカスタマイズする!その1

こんにちは、揚げた芋と揚げた茄子と揚げた豆腐があれば生きていける気がする!はしづめです。
以前katawara(とついでにLightning)で前の記事・次の記事を丸ごと非表示にするコードをご紹介しましたが、今回はここをとことんカスタマイズしてみようと思います。

katawaraもほとんど同じなので一緒に……と思いましたが、ちょっと長くなりそうだったので分けます。
ということで、まずはLightningの前の記事・次の記事の表示項目操作から!

コードはVektor.Inc フォーラム | 投稿ページの「次の記事」のアイキャッチ画像を削除 を参考にしています。Vektorの石川さん、トピ主さん、ありがとうございます!

Lightning版カスタマイズコード

表示・非表示を切り替えられる項目について

デフォルトの表示はこんな感じです。
サムネイル画像、分類名(画像右上)、記事タイトル、新着表示、日付が表示されています。このうち記事タイトル以外は非表示に出来ます。

デフォルトでは非表示だけど表示出来る項目は抜粋、投稿者名、タクソノミー、ボタンです。おおむねアーカイブページなどで設定できる表示要素と同じですね!

表示出来る項目全部盛りコード

add_filter( 'lightning_next_prev_options', function( $options ){
    $options['display_excerpt'] = true; //抜粋を表示する
    $options['display_author'] = true; //投稿者名を表示する
    $options['display_taxonomies'] = true; //タクソノミーを表示する
    $options['display_btn'] = true; //ボタンを表示する
    return $options;
} );

デフォルトでfalseになっている項目をすべてtrueにしてみました。
このコードをfunctions.phpにペーストすると、実際の表示はこんな感じになります。

もりもりで恐ろしくくどいですが、こういう感じで表示出来る項目があるよという見本なのでご容赦ください。
アーカイブ設定の表示タイプを「カード(水平)」にした時と同じですね!

非表示に出来る項目全部避けコード

add_filter( 'lightning_next_prev_options', function( $options ){
    $options['display_image'] = false; //サムネイル画像を非表示にする
    $options['display_image_overlay_term'] = false; //サムネイル画像右上のタームを非表示にする
    $options['display_date'] = false; //投稿日を非表示にする
    $options['display_new'] = false; //新着テキストを非表示にする
    return $options;
} );

全部盛りコードとは逆に、非表示に出来る項目をすべて非表示にしてみましょう。
実際の表示はこんな感じになります。

THE シンプル。個人的にはとても好きです。

実践!カスタマイズしてみよう

ざっくりしたコードの説明

add_filter( 'lightning_next_prev_options', function( $options ){
    $options['display_image'] = false;
    return $options;
} );

1行目のlightning_next_prev_optionsが前の記事・次の記事をどうこうするためのフックです。続くfunction( $options )で引数(パラメーター)を指定しています。
2行目で指定した引数$optionsに対してどのような処理をするかを記述しているので、ここをアレコレすれば項目の表示・非表示を自由に選択できます。今回いじるのはここだけ!
3行目のreturn $options;は返り値です。詳しくは割愛しますが、これを書くと処理が終了し以降の処理が中止されます。アレコレしたい処理内容はreturnより上に書きましょう。

結局どこをどういじればいいの?

add_filter( 'lightning_next_prev_options', function( $options ){
    //ここに設定したい項目を記述する
    return $options;
} );

2行目ハイライト部に必要な設定だけを記述していくだけでOKです!
下に各項目の表示・非表示をまとめたので、お好みの設定を2行目~returnより前にコピペしましょう。

//各項目を表示する(true)
    $options['display_image'] = true; //サムネイル画像を表示する★
    $options['display_image_overlay_term'] = true; //サムネイル画像右上のタームを表示する★
    $options['display_date'] = true; //投稿日を表示する★
    $options['display_new'] = true; //新着テキストを表示する★
    $options['display_excerpt'] = true; //抜粋を表示する
    $options['display_author'] = true; //投稿者名を表示する
    $options['display_taxonomies'] = true; //タクソノミーを表示する
    $options['display_btn'] = true; //ボタンを表示する

//各項目を非表示にする(false)
    $options['display_image'] = false; //サムネイル画像を非表示にする
    $options['display_image_overlay_term'] = false; //サムネイル画像右上のタームを非表示にする
    $options['display_date'] = false; //投稿日を非表示にする
    $options['display_new'] = false; //新着テキストを非表示にする
    $options['display_excerpt'] = false; //抜粋を非表示にする★
    $options['display_author'] = false; //投稿者名を非表示にする★
    $options['display_taxonomies'] = false; //タクソノミーを非表示にする★
    $options['display_btn'] = false; //ボタンを非表示にする★

各項目末尾の //~する などのコメント部分は消してしまっても大丈夫です。
コメント最後に★印がついているものはデフォルトでそうなっているのでわざわざ設定しなくても大丈夫なものです。今後なんらかの仕様変更があった時のために一応書いておきます。

カスタマイズ例いろいろ

よくわかんないな~って人向けに実用的な(?)表示をいくつかご用意してみました。
お好みのものをfunctions.phpにコピペするだけでOK!

サムネイル画像を非表示にする

add_filter( 'lightning_next_prev_options', function( $options ){
    $options['display_image'] = false;
    return $options;
} );

タイトルとサムネイル画像だけを表示する

add_filter( 'lightning_next_prev_options', function( $options ){
    $options['display_image_overlay_term'] = false;
    $options['display_date'] = false;
    $options['display_new'] = false;
    return $options;
} );

タイトルと抜粋だけを表示する

add_filter( 'lightning_next_prev_options', function( $options ){
    $options['display_image'] = false;
    $options['display_date'] = false;
    $options['display_new'] = false;
    $options['display_excerpt'] = true;
    return $options;
} );

コメントを残す

メールアドレスが公開されることはありません。