ShifterやWP2Staticで出力されないパスを出力する(リクエストする)[WordPress]

ShifterやWP2Staticで出力されないパスを出力する(リクエストする)[WordPress]

どうもfujiharaです。 今回はShifterWP2Staticで 任意のパスを書き出したいときのTips紹介になります。

背景

Jamstack流行ってますね。WordPressでもちらほら対応することが増えてきました。 ShifterやWP2Staticは自動でパスを探して出力してくれるのですが、 追加でwp-jsonのパスも出力して欲しいことがある場合もあります (URL検索ではヒットしない)。 そんな時に、出力時このパスもチェックしてね!という機能があるのでご紹介します。

Shifter

ShifterURLS::AppendURLtoAll フィルターを使います.


function append_additional_url ( $urls ) {
    $urls[] = home_url('任意のパス');
    return $urls;
}
add_action( 'init', function(){
    add_filter( 'ShifterURLS::AppendURLtoAll', 'append_additional_url' );
} );

$urlsの配列にどんどん追加して欲しいパスを書いていきます

WP2Static

Extending WP2Static の各種Filterを使います。


//追加
add_filter( 'wp2static_modify_initial_crawl_list', function ( $queue ) {
	$queue[]  = '任意のパス';

	return $queue;
} );


//削除
add_filter('wp2static_detect_xxxxxxx', '__return_false');

WP2Staticはxxxxxの箇所にsitemaps,authorsなどがあるので書き出したくないパスがあれば それも設定できます。カテゴリーパスを書き出す時に日本語のままで書き出され、CloudFrontで 日本語エラーが発生する時はwp2static_detect_categoriesで削除して、wp2static_modify_initial_crawl_list で追加してあげれば良いです。

まとめ

それでは素敵なWordPress Jamstack生活を

  • このエントリーをはてなブックマークに追加

この記事を読んだ人にオススメ