WordPressのプラグイン PS Disable Auto Formatting Ver1.0.10にて不具合発生。SSL通信で管理画面を表示した際に”ビジュアル”と”テキスト”の切替が動かない。
作成者の方へ連絡はしたものの、プラグインの更新がしばらく止まっているようなので、未来の自分も含め、誰か困っているかもしれないので修正箇所残します。
修正箇所
ps_disable_auto_formatting.php(Version: 1.0.10)
rewrite_default_script関数内
修正前
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
if ( version_compare( $wp_version, '3.9.x', '>' ) ) { $scripyt_src = get_option( 'siteurl' ) . '/' . str_replace( str_replace( '', '/', ABSPATH ), '', str_replace( '', '/', dirname( __file__ ) ) ) . '/js/390/ps_editor.js'; } elseif ( version_compare( $wp_version, '3.3.x', '>' ) ) { $scripyt_src = get_option( 'siteurl' ) . '/' . str_replace( str_replace( '', '/', ABSPATH ), '', str_replace( '', '/', dirname( __file__ ) ) ) . '/js/330/ps_editor.js'; } elseif ( version_compare( $wp_version, '2.8', '>=' ) ) { $scripyt_src = get_option( 'siteurl' ) . '/' . str_replace( str_replace( '', '/', ABSPATH ), '', str_replace( '', '/', dirname( __file__ ) ) ) . '/js/280/ps_editor.js'; } elseif ( version_compare( $wp_version, '2.7', '>=' ) ) { $scripyt_src = get_option( 'siteurl' ) . '/' . str_replace( str_replace( '', '/', ABSPATH ), '', str_replace( '', '/', dirname( __file__ ) ) ) . '/js/270/ps_editor.js'; } else { $scripyt_src = get_option( 'siteurl' ) . '/' . str_replace( str_replace( '', '/', ABSPATH ), '', str_replace( '', '/', dirname( __file__ ) ) ) . '/js/250/ps_editor.js'; if ( version_compare( $wp_version, '2.6', '>=' ) ) { $wp_scripts->registered['editor_functions']->src = $scripyt_src; } else { $wp_scripts->scripts['editor_functions']->src = $scripyt_src; } } $wp_scripts->add( 'ps_editor', $scripyt_src, false, $this->mce_version ); |
修正後
Line:110に挿入
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
if ( version_compare( $wp_version, '3.9.x', '>' ) ) { $scripyt_src = get_option( 'siteurl' ) . '/' . str_replace( str_replace( '', '/', ABSPATH ), '', str_replace( '', '/', dirname( __file__ ) ) ) . '/js/390/ps_editor.js'; } elseif ( version_compare( $wp_version, '3.3.x', '>' ) ) { $scripyt_src = get_option( 'siteurl' ) . '/' . str_replace( str_replace( '', '/', ABSPATH ), '', str_replace( '', '/', dirname( __file__ ) ) ) . '/js/330/ps_editor.js'; } elseif ( version_compare( $wp_version, '2.8', '>=' ) ) { $scripyt_src = get_option( 'siteurl' ) . '/' . str_replace( str_replace( '', '/', ABSPATH ), '', str_replace( '', '/', dirname( __file__ ) ) ) . '/js/280/ps_editor.js'; } elseif ( version_compare( $wp_version, '2.7', '>=' ) ) { $scripyt_src = get_option( 'siteurl' ) . '/' . str_replace( str_replace( '', '/', ABSPATH ), '', str_replace( '', '/', dirname( __file__ ) ) ) . '/js/270/ps_editor.js'; } else { $scripyt_src = get_option( 'siteurl' ) . '/' . str_replace( str_replace( '', '/', ABSPATH ), '', str_replace( '', '/', dirname( __file__ ) ) ) . '/js/250/ps_editor.js'; if ( version_compare( $wp_version, '2.6', '>=' ) ) { $wp_scripts->registered['editor_functions']->src = $scripyt_src; } else { $wp_scripts->scripts['editor_functions']->src = $scripyt_src; } } /* fix:care of FORCE_SSL_ADMIN --- */ if( defined('FORCE_SSL_ADMIN') && (FORCE_SSL_ADMIN) ){ $scripyt_src = str_replace( 'http://', 'https://', $scripyt_src ); } /* ---------------------------------- */ $wp_scripts->add( 'ps_editor', $scripyt_src, false, $this->mce_version ); |