web-dev-qa-db-ja.com

「製品の追加ページから属性用語を追加しようとしたときの「未定義のプロパティ 'replace'を読み取れません」Javascriptエラー

Variation Swatches for WooCommerce プラグインを使用して商品属性のスウォッチを表示していますが、商品追加ページで商品属性に用語を追加しようとすると、次のようなJavaScriptエラーが表示されます。

load-scripts.php?c=0&load[]=jquery-core,jquery-migrate,utils,jquery-ui-core,jquery-ui-widget,jquery-ui-mouse,jquery-ui-sortable,underscore,backbone,wp-util,&load[]=wp-backbone,media-models,plupload&ver=4.8.1:59 Uncaught TypeError: Cannot read property 'replace' of undefined
at Function.m.template (load-scripts.php?c=0&load[]=jquery-core,jquery-migrate,utils,jquery-ui-core,jquery-ui-widget,jquery-ui-mouse,jquery-ui-sortable,underscore,backbone,wp-util,&load[]=wp-backbone,media-models,plupload&ver=4.8.1:59)
at load-scripts.php?c=0&load[]=jquery-core,jquery-migrate,utils,jquery-ui-core,jquery-ui-widget,jquery-ui-mouse,jquery-ui-sortable,underscore,backbone,wp-util,&load[]=wp-backbone,media-models,plupload&ver=4.8.1:63
at HTMLButtonElement.<anonymous> (admin.js?ver=20170113:71)
at HTMLBodyElement.dispatch (load-scripts.php?c=0&load[]=jquery-core,jquery-migrate,utils,jquery-ui-core,jquery-ui-widget,jquery-ui-mouse,jquery-ui-sortable,underscore,backbone,wp-util,&load[]=wp-backbone,media-models,plupload&ver=4.8.1:3)
at HTMLBodyElement.r.handle (load-scripts.php?c=0&load[]=jquery-core,jquery-migrate,utils,jquery-ui-core,jquery-ui-widget,jquery-ui-mouse,jquery-ui-sortable,underscore,backbone,wp-util,&load[]=wp-backbone,media-models,plupload&ver=4.8.1:3)

また、用語の追加ダイアログは表示されませんが、同じ機能が製品編集ページでも機能します。

問題とは何か、それを修正する方法は何ですか?

1

この問題は Variation Swatches for WooCommerce pluginのマイナーバグです。266行目のclass-admin.phpファイルの誤った条件文の結果、add term modal htmlがadd productページに含まれていませんでした。

if ( $pagenow != 'post.php' || ( isset( $post ) && get_post_type( $post->ID ) != 'product' ) )

この条件は製品追加ページをチェックしないので、それを修正するために、次のステートメントを使用してpost-new.phpページを承認済みページとして追加する必要があります。

if ( ($pagenow != 'post.php' && $pagenow != 'post-new.php') || ( isset( $post ) && get_post_type( $post->ID ) != 'product' ) )
1