[_s] jetpack.php

jetpackプラグイン

jetpackとは_sを提供しているAutomatitcのプラグインで、WordPressに様々な機能を提供してくれます。機能が多すぎて逆によくわからないぐらいの機能があります。

Jetpackの公式サイト

jetpackが提供している機能の中に、functions.phpに記述することで有効化しなければならない機能がいくつかあります。_s のjetpack.phpは、このjetpackの機能を有効化するためのコードが書かれています。

<?php
/**
 * Jetpack Compatibility File
 *
 * @link https://jetpack.com/
 *
 * @package _s
 */

/**
 * Jetpack setup function.
 *
 * See: https://jetpack.com/support/infinite-scroll/
 * See: https://jetpack.com/support/responsive-videos/
 * See: https://jetpack.com/support/content-options/
 */
function _s_jetpack_setup() {
	// Add theme support for Infinite Scroll.
	add_theme_support( 'infinite-scroll', array(
		'container' => 'main',
		'render'    => '_s_infinite_scroll_render',
		'footer'    => 'page',
	) );

	// Add theme support for Responsive Videos.
	add_theme_support( 'jetpack-responsive-videos' );

	// Add theme support for Content Options.
	add_theme_support( 'jetpack-content-options', array(
		'post-details'    => array(
			'stylesheet' => '_s-style',
			'date'       => '.posted-on',
			'categories' => '.cat-links',
			'tags'       => '.tags-links',
			'author'     => '.byline',
			'comment'    => '.comments-link',
		),
		'featured-images' => array(
			'archive'    => true,
			'post'       => true,
			'page'       => true,
		),
	) );
}
add_action( 'after_setup_theme', '_s_jetpack_setup' );

/**
 * Custom render function for Infinite Scroll.
 */
function _s_infinite_scroll_render() {
	while ( have_posts() ) {
		the_post();
		if ( is_search() ) :
			get_template_part( 'template-parts/content', 'search' );
		else :
			get_template_part( 'template-parts/content', get_post_type() );
		endif;
	}
}

このコードで、3つの機能が使えるようになります。

Infinite Scroll

ページを下にスクロールした時に、どんどん次のコンテンツを読み込んでくれる、無限スクロールです。

Infinite Scroll

Responsive Videos

youtubeなどの動画の埋め込みを、コードの追加の必要なく、レスポンシブ対応します。

Responsive Videos

content-options

カスタマイザー画面のコンテンツのオプションという画面で以下の設定が可能になります。

  • 日時を表示
  •  カテゴリーを表示
  •  タグを表示
  •  投稿者を表示
  •  コメントリンクを表示
  • アイキャッチ画像
  •  ブログとアーカイブページで表示
  •  個別ページに表示
  •  ページに表示

Content Options