@ -104,13 +104,10 @@ class Keyworlds extends CI_Controller {
// 每个点
// 每个点
foreach ($ra as $v) {
foreach ($ra as $v) {
$kwr_rank = $v->kwr_rank;
$kwr_rank = $v->kwr_rank;
if ($v->kwr_rank == '>150')
if ($v->kwr_rank == '>150') {
$kwr_rank = 100;
$kwr_rank = 100;
if (strtolower($this->config->item('site_code')) == 'gm') {
$data['rank_json'] .=-$kwr_rank . ',';
} else {
$data['rank_json'] .=$kwr_rank . ',';
}
}
$data['rank_json'] .=$kwr_rank . ',';
}
}
$data['rank_json'] = substr($data['rank_json'], 0, -1);
$data['rank_json'] = substr($data['rank_json'], 0, -1);
$data['rank_json'] .=']},';
$data['rank_json'] .=']},';
@ -119,13 +116,10 @@ class Keyworlds extends CI_Controller {
$data['rank_json'] .='{"name":"' . $ra[$data_time[0]]->kw_keyworlds . '(mobile)","data":[';
$data['rank_json'] .='{"name":"' . $ra[$data_time[0]]->kw_keyworlds . '(mobile)","data":[';
foreach ($ra as $v) {
foreach ($ra as $v) {
$kwr_mobile_rank = $v->kwr_mobile_rank ? $v->kwr_mobile_rank : 'null' ;
$kwr_mobile_rank = $v->kwr_mobile_rank ? $v->kwr_mobile_rank : 'null' ;
if ($v->kwr_mobile_rank == '>150')
if ($v->kwr_mobile_rank == '>150') {
$kwr_mobile_rank = 100;
$kwr_mobile_rank = 100;
if (strtolower($this->config->item('site_code')) == 'gm') {
$data['rank_json'] .=-$kwr_mobile_rank . ',';
} else {
$data['rank_json'] .=$kwr_mobile_rank . ',';
}
}
$data['rank_json'] .= $kwr_mobile_rank . ',';
}
}
$data['rank_json'] = substr($data['rank_json'], 0, -1);
$data['rank_json'] = substr($data['rank_json'], 0, -1);
$data['rank_json'] .=']},';
$data['rank_json'] .=']},';
@ -135,16 +129,15 @@ class Keyworlds extends CI_Controller {
$data['data_time'] = json_encode($data_time);
$data['data_time'] = json_encode($data_time);
$data['rank_info'] = '';
$data['rank_info'] = '';
isset($rank_json[$data['current_keyworld']->kw_id]) & & $data['rank_info'] = $rank_json[$data['current_keyworld']->kw_id];
isset($rank_json[$data['current_keyworld']->kw_id]) & & $data['rank_info'] = $rank_json[$data['current_keyworld']->kw_id];
arsort($data['rank_info']);
if($data['wordcount'] == 1) {
arsort($data['rank_info']);
}
}
}
} else {
} else {
redirect(site_url("Keyworlds/index"));
redirect(site_url("Keyworlds/index"));
}
}
// $data['analytics'] = $this->analytics_model->get_keyword_analytics($data['current_keyworld']->kw_keyworlds, 30);
$data['site_code'] = strtolower($this->config->item('site_code'));
$data['site_code'] = strtolower($this->config->item('site_code'));
// print_r($data['rank_info']);
// print_r($data["rank_json"]);
$this->load->view('bootstrap/header', $data);
$this->load->view('bootstrap/header', $data);
$this->load->view('keyworlds/index');
$this->load->view('keyworlds/index');
$this->load->view('bootstrap/footer');
$this->load->view('bootstrap/footer');
@ -296,14 +289,14 @@ class Keyworlds extends CI_Controller {
$j = $i;
$j = $i;
$rank = $this->$method($client_flag, $keyworlds, $site_url, $j, $site_code);
$rank = $this->$method($client_flag, $keyworlds, $site_url, $j, $site_code);
// 仅更新一个字段
// 仅更新一个字段
if ($client_flag == 'm') {
if ($client_flag === 'm') {
$rank['rank'] = $last_rank[0]->kwr_rank;
$rank['rank'] = $last_rank[0]->kwr_rank;
$rank['source'] = $last_rank[0]->kwr_source;
$rank['source'] = $last_rank[0]->kwr_source;
} else {
} else {
$rank['rank_m'] = null;
$rank['rank_m'] = null;
$rank['source_m'] = null;
$rank['source_m'] = null;
}
}
if ($rank[$rank_flag] != 0) {
if (intval( $rank[$rank_flag]) != 0) {
if ($rank[$rank_flag] > 150)
if ($rank[$rank_flag] > 150)
$rank[$rank_flag] = '151';
$rank[$rank_flag] = '151';
break;
break;
@ -315,9 +308,7 @@ class Keyworlds extends CI_Controller {
}
}
}
}
//保存排名数据
//保存排名数据
if ($rank[$rank_flag] == '151') { //超过151的排名则不记录
if (isset($last_rank[0]->kwr_datetime) and $last_rank[0]->kwr_datetime > strtotime(date('Y-m-d'))) {
$this->Keywords_model->update_time($kw_id);
} elseif (isset($last_rank[0]->kwr_datetime) and $last_rank[0]->kwr_datetime > strtotime(date('Y-m-d'))) {
if ($rank[$rank_flag] != -1 and $rank[$rank_flag] != -2 and $this->Keywordsrank_model->update_rank($last_rank[0]->kwr_id, $rank['rank'], $rank['rank_m'], $rank['source'], $rank['source_m'])) {
if ($rank[$rank_flag] != -1 and $rank[$rank_flag] != -2 and $this->Keywordsrank_model->update_rank($last_rank[0]->kwr_id, $rank['rank'], $rank['rank_m'], $rank['source'], $rank['source_m'])) {
$this->Keywords_model->update_time($kw_id);
$this->Keywords_model->update_time($kw_id);
}
}
@ -343,23 +334,24 @@ class Keyworlds extends CI_Controller {
$site_config = $this->config->item('site');
$site_config = $this->config->item('site');
$engines = trim($engines);
$engines = trim($engines);
//取出需要更新排名的关键词
//取出需要更新排名的关键词
$worldsList = $this->Keywords_model->get_keyworld_list(1, $engines, $fix_site_code);
// 先取时间最久没更新的
//如果没有需要更新的则返回
$worldsList = $this->Keywords_model->get_keyworld_list_old(1, $engines, $fix_site_code);
if (empty($worldsList)) {
$today = strtotime(date('Y-m-d'));
echo 'all done';
return;
}
$today = strtotime(date('Y-m-d'));
$client_flag = "PC";
$client_flag = "PC";
$rank_flag = 'rank';
$rank_flag = 'rank';
$source_flag = 'source';
$source_flag = 'source';
if ((intval($worldsList[0]->kwr_datetime) >= intval($today)) ) {
if (empty($worldsList)) {
$worldsList = $this->Keywords_model->get_keyworld_list(1, $engines, $fix_site_code);
$client_flag = "m";
$client_flag = "m";
$rank_flag = 'rank_m';
$rank_flag = 'rank_m';
$source_flag = 'source_m';
$source_flag = 'source_m';
$last_rank = $this->Keywordsrank_model->get_rank_list($worldsList[0]->kw_id);
}
//如果没有需要更新的则返回
if (empty($worldsList)) {
echo 'all done';
return;
}
}
$last_rank = $this->Keywordsrank_model->get_rank_list($worldsList[0]->kw_id);
//获取排名并保存
//获取排名并保存
foreach ($worldsList as $v) {
foreach ($worldsList as $v) {
$site_config = $site_config[$v->kw_sitecode];
$site_config = $site_config[$v->kw_sitecode];
@ -372,8 +364,7 @@ class Keyworlds extends CI_Controller {
} else if ($engines == 'yandex') {//俄语站的yangdex
} else if ($engines == 'yandex') {//俄语站的yangdex
$rank = $this->get_search_content_by_yandex($client_flag,$v->kw_keyworlds, $site_url, $i - 1);
$rank = $this->get_search_content_by_yandex($client_flag,$v->kw_keyworlds, $site_url, $i - 1);
}
}
if ($client_flag === 'm') {
if ($client_flag == 'm') {
$rank['rank'] = $last_rank[0]->kwr_rank;
$rank['rank'] = $last_rank[0]->kwr_rank;
$rank['source'] = $last_rank[0]->kwr_source;
$rank['source'] = $last_rank[0]->kwr_source;
} else {
} else {
@ -381,26 +372,26 @@ class Keyworlds extends CI_Controller {
$rank['source_m'] = null;
$rank['source_m'] = null;
}
}
if ($rank[$rank_flag] != 0) {
if ($rank[$rank_flag] != 0) {
if ($rank[$rank_flag] > 150)
if (intval( $rank[$rank_flag]) > 150)
$rank[$rank_flag] = '151';
$rank[$rank_flag] = '151';
break;
break;
}elseif ($i == 15) {
}elseif ($i == 15) {
$rank[$rank_flag] = '151';
$rank[$rank_flag] = '151';
break;
} elseif ($rank[$rank_flag] == -2) {
} elseif ($rank[$rank_flag] == -2) {
break;
break;
}
}
}
}
if ($rank[$rank_flag] == '151') { //超过151的排名则不记录
if ($rank[$rank_flag] != -1 and $rank[$rank_flag] != -2 and $this->Keywordsrank_model->add_rank($v->kw_id, $rank['rank'], $rank['rank_m'], $rank['source'], $rank['source_m'], $rank['engines'])) {
$this->Keywords_model->update_time($v->kw_id);
$this->load->model('InfoSMS_model');
}else if ($rank[$rank_flag] != -1 and $rank[$rank_flag] != -2 and $this->Keywordsrank_model->add_rank($v->kw_id, $rank['rank'], $rank['rank_m'], $rank['source'], $rank['source_m'], $rank['engines'])) {
$last_rank = isset($last_rank[0]) ? $last_rank[0]->kwr_rank : $rank['rank'];
$this->load->model('InfoSMS_model');
$this->InfoSMS_model->readed_for_info($v->kw_id, 'keywords_rank');
$last_rank = isset($last_rank[0]) ? $last_rank[0]->kwr_rank : $rank['rank'];
$this->InfoSMS_model->add('keywords_rank', $v->kw_id, $rank['rank'], $last_rank, (string) ($rank['rank'] - $last_rank));
$this->InfoSMS_model->readed_for_info($v->kw_id, 'keywords_rank');
if ($engines != 'yandex')
$this->InfoSMS_model->add('keywords_rank', $v->kw_id, $rank['rank'], $last_rank, (string) ($rank['rank'] - $last_rank));
$this->Keywords_model->update_time($v->kw_id);
if ($engines != 'yandex')
}
$this->Keywords_model->update_time($v->kw_id);
}
}
var_dump("rank $client_flag " . $rank[$rank_flag]);
}
var_dump($worldsList[0]->kw_keyworlds, $rank);
var_dump($worldsList[0]->kw_keyworlds, $rank);
}
}