Twenty Seventeen、”サイト内検索”のリード文ソースを変更

Twenty Seventeenは、よくできたテンプレートなので、「抜粋」部分にリード文を書けば、”サイト内検索”の要約文に使ってくれます。

私は、Yoastを使ってメタディスクリプションとしてリード文を書いているので、”search.php”のソースデータを変更する必要がありました。

↓サイト内検索結果ページ、完成図↓

Twenty Seventeen サイト内サーチ 結果
Twenty Seventeen サイト内サーチ 結果

“サイト内検索”結果ページの編集は、search.php

サイト内検索の結果ページは、search.phpにて更新します。

「投稿日、投稿タイトル&リンク、投稿リード文」の3段構成にしました。

デザインは、「Twenty Seventeen、”archives.php”を要約スタイルへ」と統一しました。(というか、コードをコピペしました)

search.phpを子テーマにコピー

searh.phpを親テーマから子テーマにコピーします。
私はまだfunctions.phpで必要箇所だけ入れ替えることができないので、子テーマへ完コピして、それを修正しています。

手順は、「archives.phpの子テーマ」の時と同じです。

“search.php”修正箇所

外観→テーマの編集→twentyseventeen_child→検索結果 (search.php)にて修正をします。

オレンジ枠内を下記のコードに差し替えます

search.php、修正前
search.php、修正前
<?php
	if ( have_posts() ) : ?>
		<?php
		/* Start the Loop */
		while ( have_posts() ) : the_post();

		/*
		 * Include the Post-Format-specific template for the content.
		 * If you want to override this in a child theme, then include a file
		 * called content-___.php (where ___ is the Post Format name) and that will be used instead.
		 */ ?>

			<time class="entry-meta entry-date published" datetime="<?php echo get_the_date(); ?>T<?php the_time(); ?>"><?php echo get_the_date(); ?></time>
			<h2 class="entry-title"><a href="<?php the_permalink(); ?>" rel="bookmark"><?php the_title(); ?></a></h2>
			<div class="entry-content"><p class="article_lead"><?php echo get_post_meta($post->ID, '_yoast_wpseo_metadesc', true); ?></p></div>

<?php endwhile; // End of the loop.

更にループの区切りをわかりやすくするために、class="article_lead"を新設して関連部分の背景色をピンク色に装飾しました。
外観→CSS編集に↓コピペします。

.article_lead {
	background: #ffeaea;
	padding: 0.5rem;
	margin: 0 0 1rem 0;
}

抜粋を使う方が早い

私は、リード文をYoastのメタボックスで書いているため、コードを編集する必要があったのですが、初めから抜粋に書く方が手っ取り早いです。

投稿者: のろのろ

ブログのカスタマイズをしては、備忘録を書いています。2017年4月にワードプレスデビューし、試行錯誤しながら寝落ちする感じのへなちょこブロガーです。

コメントを残す

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください