WordPress Theme Raindrops

予告:Raindrops1.464でアーカイブページのグリッド表示

原文を表示

Raindrops1.464で、アーカイブページのグリッド表示が可能になります。

モバイルブラウザでの閲覧が多くなり、コンテンツをコンパクトにまとめたグリッドレイアウトが普及しています。

レインドロップステーマは、投稿一覧やカテゴリーアーカイブなどでは、リスト表示を行っていましたが、グリッド表示に切り替える設定をカスタマイザーに追加します。

また、この変更に伴い概要表示の内容が一部変更になります。

アーカイブ一覧での投稿フォーマットの記事は、Raindropsのhtml in excerptで表示します

アーカイブページで概要表示を行う場合、デフォルトでは、WordPressのthe_excerpt()等で表示される。htmlを除去したテキストが利用されます。

今回の機能実装を行う中で、「カスタムフォーマット」の表示について「概要表示でカスタムフォーマット投稿を表示したら、ひどい事になっている」件に気づきました。

例えば Raindropsテーマの場合、投稿内の最初のリンクを、本文内で目立たせて表示するようになっているのですが、概要表示すると、文字列だけになり「予定している機能がはたらいていない」問題です。

このため、カスタムフォーマット(標準以外)が指定された場合には、Raindropsのhtml in excerptを使用して表示するように変更を行います。

この変更により、アーカイブページで、カスタムフォーマットを指定していると、アーカイブ一覧にそれらのコンテンツ、ビデオとか画像とかリンクをあわせて表示することになります。

Raindropsのhtml in excerptとは、htmlを含めた状態で、先頭から文字数を数えて、閉じタグを補正して表示する、htmlタグを含んだ概要表示です。

外観

設定場所

カスタマイザーの概要表示でグリッドレイアウトに変更が可能になります。

カスタマイザーの設定では、投稿一覧、カテゴリーアーカイブ、検索結果のページのグリッドレイアウト化の設定が可能ですが、多くのユーザーは、タグアーカイブやカスタムフォーマットアーカイブ、カスタム投稿タイプアーカイブなどを使用していると思います

テーマのfunctions.phpで、これらのページのグリッド表示も可能ですので、サンプルコードをメモに残します。

カスタマイズ

タグアーカイブ、投稿フォーマット、カスタム投稿タイプアーカイブで、概要表示を行う設定は以下のようになります。

$raindrops_where_excerpts= array( 'is_tag','is_tax','is_post_type_archive' );

配列内の、is_tag は、is_tag()等のコンディショナルタグと同じように動作します。

is_tag
タグアーカイブを概要表示します
is_tax
投稿フォーマット一覧を概要表示します
is_post_type_archive
カスタム投稿一覧を概要表示します

更に、これら概要表示に設定されたアーカイブページをグリッド表示に変更する変数を設定します。

$raindrops_change_all_excerpt_archives_to_grid_layout= true;

この変数がtrueに設定された場合、概要表示が設定されているページをグリッド表示に変更します。

まとめると、テーマ(チャイルドテーマ)のfunctions.phpに以下のように2行追加すると、グリッド表示に変更になります。

<?php
$raindrops_where_excerpts= array( 'is_tag','is_tax','is_post_type_archive' );
$raindrops_change_all_excerpt_archives_to_grid_layout= true;
/**
 *
 *
 * @package Raindrops
 * @since Raindrops 0.1
 */
if ( !defined( 'ABSPATH' ) ) {
	exit;
}
do_action( 'raindrops_before' );

「アーカイブ一覧での投稿フォーマットの記事は、Raindropsのhtml in excerptで表示します」を従来通りの表示に戻す方法

$raindrops_change_html_excerpt_when_post_formats= false;

を併せて、指定していただくと、投稿フォーマットも従来通り、文字列だけで表示することが出来ます。