Baidu Sitemap Generator國人大神柳城編寫的wordpress插件,可以生産網站的站點地圖,可以同時生成XML和HTML兩種格式,友善搜尋引擎抓取,最近本站提升了php的版本,導緻Baidu Sitemap Generator不能更新了,而且手動更新頁面會白屏,經過一番查找,原來是Baidu Sitemap Generator在PHP7.0以上的版本不能很好的運作了,畢竟這個插件已經很久沒有更新了,相容性就要差一點。不過我們可以更改插件兩處代碼來使得它來相容PHP7.0,方法如下:
将Sitemap Generator插件目錄下的sitemap-function.php檔案的439行和 baidu_sitemap.php檔案的308行,使用preg_split替換掉split方法,改成如下:list( $today_year, $today_month, $today_day, $hour, $minute, $second ) = preg_split( '([^0-9])', $blogtime );
之是以有兩個地方要改,是因為一個是生成xml的地圖所用函數,另一個是html所用,如果你需要記得一定要改,不然html地圖不會更新!然後再修改baidu_sitemap.php檔案的第19-23行,找到如下代碼:function baidu_sitemap_menu() {
if (current_user_can('manage_options'))
add_options_page("Baidu-Sitemap","Baidu-Sitemap", 8, __FILE__, 'baidu_sitemap_optionpage');
}
将第22行中的數字8修改為字元串’manage_options’,修改後代碼如下:function baidu_sitemap_menu() {
if (current_user_can('manage_options'))
add_options_page("Baidu-Sitemap","Baidu-Sitemap", 'manage_options', __FILE__, 'baidu_sitemap_optionpage');
}
小編通過這種方法,Baidu Sitemap Generator終于可以更新了,不過隻能手動更新,不過也不算費事,完全可以接受。