ShifterやWP2Staticで出力されないパスを出力する(リクエストする)[WordPress]
どうもfujiharaです。 今回はShifterやWP2Staticで 任意のパスを書き出したいときの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生活を