質問: wordpress4.7.2をインストール後、プラグインAddquicktagをインストールしたのですが、設定画面で【変更を保存】ボタンを押すと下記のエラーが出て変更ができません。 --変更したい箇所-- デフォルトのクイックタグを非表示にするにチェックを入れる。 --エラーメッセージ-- Fatal error: Uncaught Error: [] operator not supported for strings in /Applications/MAMP/htdocs/wordpressフォルダ名/wp-content/plugins/addquicktag/inc/class-settings.php:614 Stack trace: #0 /Applications/MAMP/htdocs/wordpressフォルダ名/wp-includes/class-wp-hook.php(300): Add_Quicktag_Settings->validate_settings(Array) #1 /Applications/MAMP/htdocs/wordpressフォルダ名/wp-includes/plugin.php(203): WP_Hook->apply_filters(Array, Array) #2 /Applications/MAMP/htdocs/wordpressフォルダ名/wp-includes/formatting.php(4286): apply_filters('sanitize_option...', Array, 'rmnlQuicktagSet...', Array) #3 /Applications/MAMP/htdocs/wordpressフォルダ名/wp-includes/option.php(270): sanitize_option('rmnlQuicktagSet...', Array) #4 /Applications/MAMP/htdocs/wordpressフォルダ名/wp-admin/options.php(219): update_option('rmnlQuicktagSet...', Array) #5 {main} thrown in /Applications/MAMP/htdocs/wordpressフォルダ名/wp-content/plugins/addquicktag/inc/class-settings.php on line 614 考えられる原因と対処法を教えてください。
回答: PHP7.1を使っているのではありませんか? AddquicktagはPHP7.1での動作確認を行っていないようです。 具体的には、inc/class-settings.php の603行目で `$buttons = '';` と文字列として初期化しながら、614行目で `$buttons[ ] = $button;` と配列として利用しているので、PHP7.1はエラーとみなしています。603行目を `$buttons = array();` に変更すると動くかもしれません。 PHP7.0やPHP5系列では問題ないかもしれません。