- 去年更新了php7.1,发现Options Framework这个框架出问题了,后台报错cannot assign an empty string to a string offset 。为了效率没有仔细检查,直接退回了7.0。最近手痒更新了7.2,问题不可以逃避了。
查了下资料,其实别人早就给出了答案:https://github.com/devinsays/options-framework-theme/issues/208。
那只机器猫的方法:
function of_sanitize_multicheck( $input, $option ) { $output = ''; if ( is_array( $input ) ) { foreach( $option['options'] as $key => $value ) { $output[$key] = false; } foreach( $input as $key => $value ) { if ( array_key_exists( $key, $option['options'] ) && $value ) { $output[$key] = '1'; } } } return $output; } add_filter( 'of_sanitize_multicheck', 'of_sanitize_multicheck', 10, 2 );
找到$output[$key] = false,大概84行 把false换成 array()搞定。
感谢机器猫,Options Framework框架又能蹭下去了。
留下您的宝贵意见