} } } elseif ($dopost == 'ping1') { $sigurl = "http://baidu.api.dedecms.com/index.php"; $authdata = baidu_http_send($sigurl); $output = json_decode($authdata, true); if ($output['status'] == 1) { ShowMsg("通信正常!", -1); exit; } else { ShowMsg("无法连接:您的服务器无法正常连接'http://baidu.api.dedecms.com',请确保服务器环境支持远程获取文件。<a href='http://www.dedecms.com/addons/baidusitemap/#help' target='_blank'>点击获取更多帮助</a>", 'javascript:;'); exit; } } elseif ($dopost == 'ping2') { $sigurl = "http://zhanzhang.baidu.com/api/opensitemap/deletesitemap"; $authdata = baidu_http_send($sigurl); //$output = json_decode($authdata, true); if ($output['status'] == 1) { ShowMsg("通信正常!", -1); exit; } else { ShowMsg("无法连接:您的服务器无法正常连接'http://zhanzhang.baidu.com/api',请确保服务器环境支持远程获取文件。<a href='http://www.dedecms.com/addons/baidusitemap/#help' target='_blank'>点击获取更多帮助</a>", 'javascript:;'); exit; } } elseif ($dopost == 'bind') { $site_id = baidu_get_setting('site_id'); if (!empty($site_id)) { ShowMsg("当前站点已经绑定site_id,无需重复绑定", -1); exit; } $site_id_msg = '<font color="red">尚未绑定站点ID,请点击</font><a href="?dopost=bind_site_id" style="color:blue">[绑定站点ID]</a><font color="red">完成绑定</font>';
function baidu_delsitemap($site, $type = 0, $sign) { global $dsql; $siteurl = $site; $type = intval($type); $addWhere = ""; if ($type > 0) { $addWhere .= "WHERE type={$type}"; } $query = "SELECT * FROM `#@__plus_baidusitemap_list` {$addWhere}"; $dsql->SetQuery($query); $dsql->Execute('dd'); while ($row = $dsql->GetArray('dd')) { $indexurl = $row['url']; $submiturl = "http://zz.baidu.com/api/opensitemap/deletesitemap?siteurl=" . urlencode($siteurl) . "&indexurl=" . urlencode($indexurl) . "&tokensign=" . urlencode($sign); //var_dump($submiturl); $ret = baidu_http_send($submiturl); $delresult = json_decode($ret, true); if ($delresult['status'] == 0) { $delQuery = "DELETE FROM `#@__plus_baidusitemap_list` WHERE `sid`={$row['sid']};"; $dsql->ExecuteNoneQuery($delQuery); $dsql->ExecuteNoneQuery("TRUNCATE `#@__plus_baidusitemap_list`;"); } //var_dump($delresult); } return true; }
function baidu_submit_sitemap_index($action, $type, $site, $sppasswd, $sign) { $zzaction = ''; if (0 == strncasecmp('del', $action, 3)) { $zzaction = '/discuz/deleteSitemap'; } elseif (0 == strncasecmp('add', $action, 3)) { $zzaction = '/discuz/saveSitemap'; } else { return false; } $script = ''; $stype = ''; if (1 == $type) { $script = 'indexall'; $stype = 'all'; } elseif (2 == $type) { $script = 'indexinc'; $stype = 'inc'; } else { return false; } $indexurl = "{$site}plugin.php?id=baidusubmit:{$script}&p={$sppasswd}"; $zzsite = baidu_get_plugin_config('zzplatform'); $submiturl = $zzsite . $zzaction . '?site=' . urlencode($site) . '&indexurl=' . urlencode($indexurl) . '&sign=' . urlencode($sign) . '&type=' . $stype; $ret = baidu_http_send($submiturl); return array( 'json' => $ret, 'url' => $submiturl, ); }
baidu_set_setting('lastuptime_inc', time()); } if (0 == $allresult['status']) { ShowMsg("成功提交百度地图索引", "baidusitemap_main.php", 0, 5000); exit; } else { ShowMsg("提交百度地图索引失败", "baidusitemap_main.php", 0, 5000); exit; } } else { ShowMsg("提交百度地图索引失败,无法校验本地密钥!", "baidusitemap_main.php"); exit; } } } elseif ($dopost == 'checkupdate') { $get_latest_ver = baidu_http_send('http://baidu.api.dedecms.com/index.php?c=welcome&m=get_latest_ver'); if (version_compare($get_latest_ver, PLUS_BAIDUSITEMAP_VER, '>')) { ShowMsg("检查到有新版本,请前去下载!<br /><a href='http://bbs.dedecms.com/646271.html' target='_blank' style='color:blue'>点击前去下载</a> <a href='baidusitemap_main.php' >返回</a>", "javascript:;"); exit; } else { ShowMsg("当前为最新版本,无须下载更新!", "javascript:;"); exit; } } elseif ($dopost == 'viewsub') { $query = "SELECT * FROM `#@__plus_baidusitemap_list` ORDER BY sid DESC"; $dsql->SetQuery($query); $dsql->Execute('dd'); $liststr = ""; while ($arr = $dsql->GetArray('dd')) { $typestr = $arr['type'] == 1 ? '[全量]' : '[增量]'; $liststr .= " {$typestr} {$arr['url']}<br/>\r\n";
if ($data['status'] != 1) { baidu_show_json(array( 'error' => 1, 'msg' => diconv(lang('plugin/baidusubmit', 'getCheckSigfailed'), CHARSET, 'utf-8'), )); } C::t('#baidusubmit#baidusubmit_setting')->update('siteurl', $data['siteurl']); C::t('#baidusubmit#baidusubmit_setting')->update('checksign', $data['checksign']); //站长平台回调的URL $siteurl = baidu_get_plugin_setting('siteurl', false, true); $url = $siteurl.'plugin.php?id=baidusubmit:checksign&checksign='.$data['checksign']; $sigurl = $config['zzplatform'].'/discuz/auth?checksign='.$data['checksign'].'&url='.urlencode($url).'&site='.urlencode($siteurl); $authData = baidu_http_send($sigurl); //去站长平台进行验证 C::t('#baidusubmit#baidusubmit_setting')->remove_key('checksign'); $output = json_decode($authData, true); if ($output['status'] == 1) { //token $token = $output['token']; C::t('#baidusubmit#baidusubmit_setting')->update('pingtoken', $token); //保存下旧密码 $old_sppasswd = baidu_get_plugin_setting('sppasswd'); //只有初次安装时才提交sitemap if (empty($old_sppasswd)) { $sppasswd = baidu_gen_sitemap_passwd(); C::t('#baidusubmit#baidusubmit_setting')->update('sppasswd', $sppasswd);
function baidu_delsitemap($site, $type = 0, $sign) { global $dsql, $cfg_plus_dir; $siteurl = baidu_get_setting('siteurl'); $token = baidu_get_setting('pingtoken'); $bdpwd = baidu_get_setting('bdpwd'); $sign = md5($siteurl . $token); $type = intval($type); $addWhere = ""; if ($type > 0) { $indexurl = $siteurl . "{$cfg_plus_dir}/baidusitemap.php?dopost=sitemap_urls&pwd={$bdpwd}&type={$type}"; $submiturl = "http://zz.baidu.com/api/opensitemap/deletesitemap?siteurl=" . urlencode($siteurl) . "&indexurl=" . urlencode($indexurl) . "&tokensign=" . urlencode($sign); $ret = baidu_http_send($submiturl); $delQuery = "DELETE FROM `#@__plus_baidusitemap_list` WHERE `type`='{$type}';"; $dsql->ExecuteNoneQuery($delQuery); return true; } return false; }