Welcartをバージョン1.9.3にアップデートしたら商品詳細ページに専用テンプレート「wc_item_single.php」が割り当てられない状態になりました。デバッグしてみるとsingle.phpが割り当てられており、コンテンツ部分にWelcartのフォールバックテンプレートが表示されていることを発見。色々調べた結果、私の状況では以下の方法で解決できました。商品詳細ページに「wc_item_single.php」を割り当てる以下が対応したコードです。テーマのfunctions.phpに記述します。// 無名関数バージョン(PHP5.3以上で可能です)add_filter( 'usces_filter_template_redirect', function() { return false; } );// 無名関数を使わないバージョン(サーバーのPHPバージョンが5.3未満の場合)function my_usces_filter_template_redirect() { return false;}add_filter( 'usces_filter_template_redirect', 'my_usces_filter_template_redirect' );2つ関数を書いていますが、1つ目の1行コードで対応できます。もしサーバーのPHPバージョンが5.3未満の場合は無名関数が使えないので後者で対応します。商品詳細ページのテンプレートをリダイレクトしているプログラム同じ現象に遭遇したとしても別のことが原因の可能性もあるので、リダイレクトしているコアプログラムを一部貼り付けておきます。「usc-e-shop\classes\usceshop.class.php」クラスのtemplate_redirect()メソッドです。(Welcartのバージョンは1.9.3、商品詳細ページをリダイレクトしている部分のみ切り取ってます)function template_redirect () { global $wpdb, $wp_version, $post, $usces_entries, $usces_carts, $usces_members, $usces_gp, $member_regmode; if ( version_compare( $wp_version, '4.4-beta', '>' ) && is_embed() ) { return; } if ( apply_filters( 'usces_action_template_redirect', false ) ) { return; }//Deprecated if ( apply_filters( 'usces_filter_template_redirect', false ) ) { return; } $parent_path = get_template_directory() . '/wc_templates'; $child_path = get_stylesheet_directory() . '/wc_templates'; if ( is_single() && 'item' == $post->post_mime_type ) { if ( file_exists( $child_path . '/wc_item_single.php' ) ) { if ( ! post_password_required( $post ) ) { include( $child_path . '/wc_item_single.php' ); exit; } } elseif ( file_exists( $parent_path . '/wc_item_single.php' ) && ! defined( 'USCES_PARENT_LOAD' ) ) { if ( ! post_password_required( $post ) ) { include( $parent_path . '/wc_item_single.php' ); exit; } } }}私の場合は9行目のフックusces_filter_template_redirectが原因でした。今回紹介したコードで直らない場合、他の条件分岐の部分でテンプレートが割り当てられない状況に陥っているかもしれません。