function __destruct() { //flush(); //个别web配置下会出错 if (!empty($_GET['inajax'])) return; if (empty($_GET['action']) || 'newthread' !== $_GET['action']) return; if ('yes' !== $_GET['topicsubmit']) return; if ($_POST['formhash'] != FORMHASH) return; global $tid; if (empty($tid)) return; if (defined("_bds_w9x_{$tid}")) return; define("_bds_w9x_{$tid}", true); if (!baidu_get_plugin_setting('openping')) return; if (baidu_senddata_error()) return; //发新帖 $thread = get_thread_by_tid($tid); if ($thread) { $url = baidu_gen_thread_url($tid, 1, 1, $thread['fid']); $schema = new BaiduThreadSchema(); $schema->setThreadUrl($url); baidu_send_data($schema, 1); } }
function baidu_send_data($schema, $type) { $site = baidu_get_plugin_setting('siteurl'); if (!$site) { global $_G; $site = $_G['siteurl']; } //$site = baidu_get_site_from_url($site); $token = baidu_get_plugin_setting('pingtoken'); if (!$token) { return; } $pingurl = baidu_get_plugin_config('zzpingurl'); $xml = '<?xml version="1.0" encoding="UTF-8"?><urlset>'; $url = ''; if ($type === 1) { //新增或更新 $xml .= $schema->toSitemapXml(); $xml .= '</urlset>'; $url .= $pingurl . '?site=' . urlencode($site) . '&resource_name=sitemap&method=add'; } if ($type === 2) { //删除 $xml .= $schema->toDeleteXml(); $xml .= '</urlset>'; $url .= $pingurl . '?site=' . urlencode($site) . '&resource_name=sitemap&method=del'; } $sign = md5($site . $xml . $token); $url .= '&sign=' . $sign; $_st = time(); $result = baidu_http_send($url, 1024, $xml, $cookie = '', baidu_senddata_timeout()); baidu_senddata_timeout(time() - $_st); if (0 === strlen(trim($result))) { baidu_senddata_error(false); } if (baidu_get_plugin_setting('pinglog')) { baidu_senddata_log($xml); baidu_senddata_log($result . "\n"); } }