190: protected function getarticle($var,$where,$lang,$table,$viewTemplate=null){ 191- 192- if ($table=='New' || $table=='Download') { 193- $fname = ($lang=='c') ? 'title' : 'etitle' ; 194- $relafield='id,url,title,etitle,time'; 195- } else { 196- $fname = ($lang=='c') ? 'name' : 'ename' ; 197- $relafield='id,name,ename,description,edescription,url,thumb'; 198- } 199- $db=M($table); 200- $article=$db->field('sort',true)->where($where,array($var))->find(); 201- if ($article) { 202- if ($lang=='c') { 203- $article['contents']=$this->doInside($article['contents'],'c'); 204- } else { $article['econtents']=$this->doInside($article['econtents'],'e'); 205- } 206- $this->related=$db->field($relafield)->where("pid = ".$article['pid']." and id <> ".$article['id'])->select(); 207- if(!empty($article['photo'])){ 208- 209- $this->photo=explode(',',$article['photo']); 210- 211- } 212- 213- $articlelist=M('list')->field('id,pid,bid,type,name,ename')->find($article['pid']); 214- $this->articlelist=$articlelist; 215- $this->catid=$articlelist['bid']; 216- }else{ $this->_empty(); exit; 217- } 218- $this->prevnext=$this->prevnext($table,$article['id'],$fname,'个',$lang); 219- // 语言映射:英文页将etitle/econtents等映射到title/contents 220- if ($lang == 'e') { 221- $article['title'] = !empty($article['etitle']) ? trim($article['etitle']) : trim($article['title']); 222- $article['description'] = !empty($article['edescription']) ? trim($article['edescription']) : trim($article['description']); 223- $article['keywords'] = !empty($article['ekeywords']) ? trim($article['ekeywords']) : trim($article['keywords']); 224- $article['contents'] = !empty($article['econtents']) ? $article['econtents'] : $article['contents']; 225- } 226- $this->article=$article; 227- 228- // SEO优化:设置Canonical和OG变量 229- $base_url = 'https://' . $_SERVER['HTTP_HOST']; 230- $seo_suffix = ($lang == 'c') ? 'c.html' : '.html'; 231- $canonical_path = ''; 232- if($table == 'Product') { 233- $canonical_path = '/product/' . $var . $seo_suffix; 234- } elseif($table == 'List') { 235- $canonical_path = '/' . $var . $seo_suffix; 236- } elseif($table == 'New') { 237- $canonical_path = '/blog/' . $var . $seo_suffix; 238- } elseif($table == 'Photo') { 239- $canonical_path = '/photo/' . $var . '/' . I('get.p') . $seo_suffix; 240- } elseif($table == 'Inside') { 241- $canonical_path = '/' . $var . $seo_suffix; 242- } elseif($table == 'Download') { 243- $canonical_path = '/download/' . $var . $seo_suffix; 244- } 245- $canonical_url = $base_url . $canonical_path; 246- $og_title = ($lang == 'c' && !empty($article['title'])) ? trim($article['title']) : ((!empty($article['etitle'])) ? trim($article['etitle']) : trim($article['ename'])); 247- $og_desc = ($lang == 'c' && !empty($article['description'])) ? trim($article['description']) : ((!empty($article['edescription'])) ? trim($article['edescription']) : trim($article['ename'])); 248- $og_img = (!empty($article['thumb'])) ? $base_url . '/Uploads/' . $article['thumb'] : $base_url . '/Uploads/image/20240819/ecopaperbox-logo.png'; 249- // SEO基础变量赋值 250- $seo_title = ($lang == 'c' && !empty($article['title'])) ? $article['title'] . ' | Ecopaperbox' : ((!empty($article['etitle'])) ? trim($article['etitle']) . ' | Ecopaperbox' : trim($article['ename']) . ' | Ecopaperbox'); 251- $seo_keywords = ($lang == 'c' && !empty($article['keywords'])) ? $article['keywords'] : ((!empty($article['ekeywords'])) ? $article['ekeywords'] : $article['ename']); 252- $seo_description = ($lang == 'c' && !empty($article['description'])) ? substr(strip_tags($article['description']), 0, 160) : ((!empty($article['edescription'])) ? substr(strip_tags($article['edescription']), 0, 160) : substr(strip_tags($article['ename']), 0, 160)); 253- $this->assign('seo_title', $seo_title); 254- $this->assign('seo_keywords', $seo_keywords); 255- $this->assign('seo_description', $seo_description); 256- $this->assign('canonical_url', $canonical_url); 257- $this->assign('canonical_url_zh', $canonical_url); 258- $this->assign('canonical_url_en', $canonical_url); 259- $this->assign('og_type', 'product'); 260- $this->assign('og_title', $og_title); 261- $this->assign('og_description', substr(strip_tags($og_desc), 0, 200)); 262- $this->assign('og_image', $og_img); 263- $this->assign('og_url', $canonical_url); 264- $this->assign('twitter_title', $og_title); 265- $this->assign('twitter_description', substr(strip_tags($og_desc), 0, 200)); 266- $this->assign('twitter_image', $og_img); 267- $template = ($viewTemplate !== null) ? $viewTemplate : (($lang=='c') ? 'c_index' : 'e_index'); 268- $this->display($template); 269- } 270- 271- 272- public function _empty(){ 273- $template = (I('get.g')=='c') ? 'Public:c_404' : 'Public:e_404' ; 274- header("HTTP/1.0 404 Not Found");//使HTTP返回404状态码 275- $this->list=recursive(M('List')->field('id,name,ename,url,pid,sort,type,link')->order('sort')->select()); 276- $this->display($template); 277- } 278- 279-} 280-?> 系统发生错误

:(

页面错误!请稍后再试~