login first'); } $FRONTEND_PATH = 'vendors/'; $FRONTEND_TOOLTIPSTER = $FRONTEND_PATH . 'tooltipster/'; ?> Google Rank Keywords/Logs Google Rank Keywords/Logs'; $hashkey = isset($_GET['k']) ? $_GET['k'] : ''; if($hashkey){ $pair = AIA_SEOKeywords::get_keyword_url_pair_by_hashkey($hashkey); if(isset($_GET['match_kw'])){ $logs = AIA_SEOKeywords::get_logs_by_keyword($pair->kw); }elseif(isset($_GET['match_url'])){ $logs = AIA_SEOKeywords::get_logs_by_url($pair->url); }else{ $logs = AIA_SEOKeywords::get_logs_by_hashkey($hashkey); $kw = $pair->kw; $url = $pair->url; } echo'回主頁 '; foreach($logs as$v){ $competior = $v->competior ? unserialize($v->competior) : []; $str_competior = ''; foreach($competior as $c){ $str_competior .= '排名'.$c[0].''.$c[2].' , '; } $url_text = isset($url) ? $url : $v->url; $url_text = AIA_SEOKeywords::display_url_text($url_text); echo ''; } die('
'.implode('',['URL', '關鍵字', '排名 Rank', '紀錄時間', '競爭者']).'
'.implode('',[ $url_text, isset($kw) ? $kw : $v->kw, AIA_SEOKeywords::rank_text($v->rank), $v->log_datetime, '
' . $str_competior . '
', ] ).'
'); } echo''; $ary_logs = array(); # key is kw, value is sort(array([],[],[])) foreach(AIA_SEOKeywords::get_all_keywords()as$v){ $kw = $v->kw; if(!isset($ary_logs[$kw])){ $ary_logs[$kw] = array(); } $ary_logs[$kw][] = $v; } # function __cmp($a,$b){ if($a->g_newest_rank==SEO_KEYWORDS_NO_RANK_VALUE){ return 1; }elseif($b->g_newest_rank==SEO_KEYWORDS_NO_RANK_VALUE){ return -1; }elseif($a->g_newest_rank==$b->g_newest_rank){ return 0; }elseif($a->g_newest_rank>$b->g_newest_rank){ return 1; }elseif($a->g_newest_rank<$b->g_newest_rank){ return -1; } } foreach($ary_logs as $k=>$v){ usort($ary_logs[$k], '__cmp'); } # foreach($ary_logs as $k=>$v){ $new_key = 'GOOGLE_RANK_'; $google_great_rank = 99999; foreach($v as $v2){ $g_newest_rank = $v2->g_newest_rank; if($g_newest_rank==SEO_KEYWORDS_NO_RANK_VALUE){ continue; } if($g_newest_rank<$google_great_rank){ $google_great_rank = $g_newest_rank; } if($google_great_rank==SEO_KEYWORDS_TOPEST_RANK_VALUE){ break; } } $new_key .= str_pad($google_great_rank,5,'0',STR_PAD_LEFT) . $k; $ary_logs[$new_key] = $v; unset($ary_logs[$k]); } foreach($ary_logs as$rank_kw=>$values): foreach($values as $idx=>$v): $history = ''; $newest_g_direct = ''; if($v->g_history){ $pre_rank = ''; $ary_history = unserialize($v->g_history); krsort($ary_history); $N = 0; $MAX_N = 10; foreach($ary_history as $datetime=>$rank){ if(AIA_SEOKeywords::is_not_empty_rank_value($rank)){ $direct = ''; if(strlen($pre_rank)){ if($pre_rank==$rank){ $direct='←'; }elseif($pre_rank>$rank){ $direct='↙'; }elseif($pre_rank<$rank){ $direct='↖'; } } if(!$newest_g_direct){ if($direct=='↖'){ $newest_g_direct = '(升)'; } elseif($direct=='←'){ $newest_g_direct = '(平)'; } elseif($direct=='↙'){ $newest_g_direct = '(降)'; } } $history.=$direct.''.$rank.''; $pre_rank = $rank; $N+=1; } if($N>=$MAX_N){break;} } } $IS_FIRST_IDX = $idx===0; $td1 = ''.$v->kw.''; $td2 = $v->url ? '' .AIA_SEOKeywords::display_url_text($v->url) .' ' : ''; $td3 = '' . ($v->url ? $v->kw.'+{URL}' : $v->kw) .''; $td4 = AIA_SEOKeywords::rank_text($v->g_newest_rank) . $newest_g_direct; $td5 = ''.substr($v->g_newest_log_datetime, 0, 16).''; $td6 = $history; $tr_elements = [$td2, $td3, $td4, $td5, $td6]; if($IS_FIRST_IDX){ $tr_elements = array_merge([$td1], [$td2, $td3, $td4, $td5, $td6]); } echo ''.implode(''; endforeach; endforeach; echo'
'.implode('',['Keywords', 'URL', 'View', '最近排名', '最近紀錄', '歷史紀錄']).'
',$tr_elements) .'
'; ?>