修復 wordpress 中文繁簡轉換插件的問題

給網站添加了WP Chinese Conversion,可以進行簡體繁體轉換了。

目前這個WP Chinese Conversion插件的版本是1.1.16,已經5年沒更新了。PHP升級後有了些變化,於是這個插件就有了些error/warning。自己動手將就改了一下,修改都在wp-chinese-conversion.php,把error/warning fixed了。本文記錄一下。

each function被新版PHP給deprecated了

把這用到each的代碼,比如這個

while(list($key, $val) = each($robots))
    if(strstr($ua, strtoupper($val)))
        return true;

改成

$n = count($robots);
$i = 0;
while ($i < $n) {
    $val = $robots[$i];
    if(strstr($ua, strtoupper($val))) {
        return true;
    }
    $i++;
}

create_function也被PHP給deprecated了

把用到create_function的地方改成anonymous function,比如這段

add_filter('posts_distinct', create_function('$s', 'return \'DISTINCT\';'));

改成

add_filter('posts_distinct', function($s) {
    return 'DISTINCT';
});

總結

修改這兩function用到的地方後,就正常工作了。

Leave a Comment

Your email address will not be published.