WordPressの4.7から追加されたTemplate Post Typeがあります。
どんな機能かというと、普通の投稿タイプでテンプレート属性が使えるようになります。
で、こんな便利な機能が4.9で使えなくなるという・・・
正確にはバグです。Template Post Typeを使ったファイル名をリネームしたり、削除したりすると、WARNINGが表示されます。
WARNINGを非表示にしても、テンプレート属性が使えなくなりますので、結果的にTemplate Post Type機能が使えません。
調べた所、既にバグとしてWordPressのフォーラムにチケットが発行されていて、4.9.1で直るそうです。
https://core.trac.wordpress.org/ticket/42573
でも4.9.1まで待てない人の為に回避策を書きます。僕が書いたわけじゃないですけど・・・
westonruterさんに感謝
https://gist.github.com/westonruter/6c2ca0e5a4da233bf4bd88a1871dd950
function.php
function wp_42573_fix_template_caching( WP_Screen $current_screen ) {
// Only flush the file cache with each request to post list table, edit post screen, or theme editor.
if ( ! in_array( $current_screen->base, array( 'post', 'edit', 'theme-editor' ), true ) ) {
return;
}
$theme = wp_get_theme();
if ( ! $theme ) {
return;
}
$cache_hash = md5( $theme->get_theme_root() . '/' . $theme->get_stylesheet() );
$label = sanitize_key( 'files_' . $cache_hash . '-' . $theme->get( 'Version' ) );
$transient_key = substr( $label, 0, 29 ) . md5( $label );
delete_transient( $transient_key );
}
add_action( 'current_screen', 'wp_42573_fix_template_caching' );
これを追加すればOKです。
ただし、4.9.1で直るそうなので、その時には消すのを忘れないようにしましょう。