log(ToLogStr($log)); if (isset($SHOW_MESSAGE) && $SHOW_MESSAGE) { echo $log . "\n"; } # 接入變數 $getCatInfo = getCatInfo($_GET['c'], 'magazine'); $cid = $getCatInfo['cid']; $cat_cname = $getCatInfo['cat_cname']; $cat_ename = $getCatInfo['cat_ename']; $getMediaInfo = getMediaInfo($_GET['m'], 'magazine'); $mid = $getMediaInfo['mid']; $media_cname = $getMediaInfo['media_cname']; $media_ename = $getMediaInfo['media_ename']; $dt = (!empty($_GET['v'])) ? $_GET['v'] : ''; $nid = (!empty($_GET['nid'])) ? $_GET['nid'] : ''; $cat_subtype = isset($_GET['subtype']) ? $_GET['subtype'] : null; $style = isset($_GET['style']) ? $_GET['style'] : null; # 檢查變數 if (!(_InCatName($cat_ename, 'magazine') && _InMedia($media_ename, 'magazine') && _InNid($nid, 'magazine') && preg_match('/^\d+$/', $dt))) { oops('000'); exit; } # 是房產媒體則導房產連結 (住展雜誌排除) // if($style!=='realestate' && $mid!=='055'){ // foreach($PropertyMagazineMediaList as $k => $v){ // if(!in_array($mid, $v)) continue; // header('Location:/realestate/report/'.$cat_ename.'/'.$media_ename.'/'.$dt.'/'.$nid.'.htm'); // exit; // } // } # 讀入單文頁新聞內容 $incfile = $MAG_DATA_DIR . $cat_ename . '/' . $media_ename . '/' . $dt . '/' . $nid . '.inc'; $newsItem = LoadRequireFile($incfile); if (!$newsItem) { oops('000'); exit; } $newsItem['nid'] = $nid; # 插入資料 $insertItem = array( 'pubDate' => date('Y-m-d H:i:s', strtotime($newsItem['pubDate'])), 'cat_cname' => $cat_cname, 'cat_ename' => $cat_ename, 'media_cname' => $media_cname, 'media_ename' => $media_ename, 'news_link' => '/magazine/report/' . $cat_ename . '/' . $media_ename . '/' . $dt . '/' . $nid . '.htm', 'photo_link' => '/magazine/photo/' . $cat_ename . '/' . $media_ename . '/' . $dt . '/' . $nid . '.htm', 'mail_link' => '/magazine/mail/' . $cat_ename . '/' . $media_ename . '/' . $dt . '/' . $nid . '.htm', 'fastmail_link' => '/magazine/mail_send/' . $cat_ename . '/' . $media_ename . '/' . $dt . '/' . $nid . '.htm', 'print_link' => '/magazine/print/' . $cat_ename . '/' . $media_ename . '/' . $dt . '/' . $nid . '.htm', ); $newsItem = is_array($newsItem) ? $newsItem : array(); $newsItem = array_merge($newsItem, $insertItem); if (!empty($newsItem)) { # 如果內文沒有圖片,但有列表圖片時,內文右上角顯示列表圖片 if (!preg_match('//i', $newsItem['content']) && (isset($newsItem['src']) && count($newsItem['src']) > 0)) { $newsItem['src'][0] = changPhotoSize($newsItem['src'][0], 'm'); } else { $newsItem['content'] = preg_replace_callback('//', 'changePic', $newsItem['content']); unset($newsItem['src'][0]); } } # 文章分頁 if ($style == 'realestate') { $temp_content = style_chang($temp_content); } # 找出本期 & 前期雜誌區塊 $thisMagVolUrl = '/magazine/this/' . $cat_ename . '/' . $media_ename . '/' . $dt; $thisMagArticleUrl = '/magazine/report/' . $cat_ename . '/' . $media_ename . '/' . $dt . '/' . $nid . '.htm'; $tmpMagItem = LoadRequireFile($MAG_DATA_DIR . $cat_ename . '/' . $media_ename . '/' . $media_ename . '_pre.inc'); $_magName = (!empty($tmpMagItem['name'])) ? $tmpMagItem['name'] : ''; $_magVolList = (!empty($tmpMagItem['article'])) ? $tmpMagItem['article'] : []; $matchMagVolList = false; foreach ($_magVolList as $j => $magVolData) { if ($magVolData['morelink'] !== $thisMagVolUrl) { continue; } $matchMagVolList = true; # 列表內排除掉本篇文章 $magVolArticleData = isset($magVolData['article']) ? $magVolData['article'] : $magVolData['article1']; $magVolArticleData = (!empty($magVolArticleData)) ? array_filter($magVolArticleData, function ($articleData) use ($thisMagArticleUrl) { return $articleData['link'] != $thisMagArticleUrl ; }) : []; # 檢查排除文章後陣列是否為空,不是空的才輸出本期其他文章 if (!empty($magVolArticleData)) { $preMagItem['article'] = array_slice($magVolArticleData, 0, 10); $preMagItem['media'] = $_magName; } # 檢查前期文章列表是否存在,存在才輸出前期其他文章 if (isset($_magVolList[$j + 1])) { $nextMagItem = $_magVolList[$j + 1]; if (isset($nextMagItem['article'])) { $nextMagItem['article'] = array_slice($nextMagItem['article'], 0, 10); } elseif (isset($nextMagItem['article1'])) { $nextMagItem['article1'] = array_slice($nextMagItem['article1'], 0, 10); } $nextMagItem['media'] = $_magName; } break; } #雜誌期數不在清單內 if (!$matchMagVolList) { oops('000'); exit; } # 右欄空氣品質 $rightAir = rightAir(); # 右欄氣象資訊 $rightWeather = right_get_weather(); # 右欄星座 $rightConstellation = rightConstellation(); # 右欄樂透 $rightLottery = rightLottery(); # 右欄雜誌名單 $collMagMediaItem = rightCollMedia('magazine'); # 頁面資訊 $html_title = $newsItem['title'] . ' - ' . $newsItem['cat_cname'] . ' - PChome Online 新聞'; $html_description = $newsItem['summary']; $html_keywords = $newsItem['media_cname']; # 廣告 $UAD = getUserAD(90, 91, 92, 93, 94); # 時間檢測 PageLoadCostTime(); # 記憶體檢測 PageLoadCostMemory(); # 通知設定 $news_notice = new news_notice(); $news_notice->insert_news($cid, $mid, $nid); # PV 記錄 pv('M', $cid, $mid, $nid); $pv_js_code = pv_js_code('M', $cid, $mid, $nid); # 讀入版型 $template = $TEMPLATES . 'base_body.tpl.html'; require_once($template); #========================================= # 修改新聞內容 #========================================= function changePic($url) { global $newsItem; return $newsItem['src'][$url[1]] ? '' : ''; } function style_chang($string) { $string = preg_replace('/^]*?>$/smi', '
$0
', $string); $string = preg_replace('/^
(.*?)<\/div>(.*?)<\/div><\/div>/smi', '
$1$2
', $string); return $string; }