예제 #1
0
파일: Default.php 프로젝트: hongbo819/LJL
 /**
  * 母站首页
  */
 public function doHome(LJL_Request $input, LJL_Response $output)
 {
     //echo Blog_Plugin_Common::ckid('胡国庆');die;
     //echo 111;die;
     //setcookie('userProvinceId', 'aaa', SYSTEM_TIME + 86400, '/');
     // 	    setcookie('userProvinceId2', 'aaa', SYSTEM_TIME + 86400, '/', '.zhbor.com');
     // 	    die();
     LJL_Http::setExpires(3600);
     $nearTime = SYSTEM_TIME - 30 * 24 * 3600;
     //最热10篇
     $hotList = Helper_Blogconfig::getBlogRankList(array('fields' => array('webSite', 'articleId', 'title', 'cate', 'cateVal', 'score', 'publishTime'), 'pageSize' => 15, 'order' => 'order by score desc', 'publishTime' => $nearTime));
     if (count($hotList) < 10) {
         $hotList = Helper_Blogconfig::getBlogRankList(array('fields' => array('webSite', 'articleId', 'title', 'cate', 'cateVal', 'score', 'publishTime'), 'pageSize' => 15, 'order' => 'order by score desc'));
     }
     //最新10篇
     $newList = Helper_Blogconfig::getBlogRankList(array('fields' => array('webSite', 'articleId', 'title', 'cate', 'cateVal', 'score', 'publishTime'), 'pageSize' => 15, 'order' => 'order by publishTime desc', 'publishTime' => $nearTime));
     if (count($newList) < 10) {
         $newList = Helper_Blogconfig::getBlogRankList(array('fields' => array('webSite', 'articleId', 'title', 'cate', 'cateVal', 'score', 'publishTime'), 'pageSize' => 15, 'order' => 'order by publishTime desc'));
     }
     //推荐10篇
     $recommendList = Helper_Blogconfig::getBlogRankList(array('fields' => array('webSite', 'articleId', 'title', 'descript', 'cate', 'cateVal', 'score', 'publishTime'), 'pageSize' => 10, 'order' => 'order by isRecommend desc,score desc,publishTime desc'));
     //博主100个
     $bloggerList = Helper_Blogconfig::getAdminList(array('page' => 1, 'pageSize' => 100, 'fields' => array('webName', 'webSite'), 'status' => 1, 'order' => 'order by score desc'));
     //自定义(关于本博1篇)
     //seo
     $output->seoArr = array('title' => BLOG_SEO_TITTLE . ' | 最红博 ');
     $output->pageType = 'webHome';
     $output->hotList = $hotList;
     $output->newList = $newList;
     $output->recommendList = $recommendList;
     $output->bloggerList = $bloggerList;
     $output->header = $output->fetchCol("Part/Main/Header");
     $output->footer = $output->fetchCol("Part/Main/Footer");
     $output->setTemplate('Home');
 }
예제 #2
0
파일: Detail.php 프로젝트: hongbo819/LJL
 public function doDefault(LJL_Request $input, LJL_Response $output)
 {
     //http://hongbo.com/index.php?c=detail&a=default&articleid=67
     LJL_Http::setExpires(3600);
     #设置缓存时间
     $articleId = $input->get('articleid');
     $articleInfo = Helper_Blog::getArticleInfo(array('articleId' => $articleId, 'fileds' => array('firstImgId', 'cate', 'title', 'descript', 'tags', 'source', 'insertTime', 'view', 'content')));
     if (count($articleInfo) < 5) {
         LJL_Http::send404Header();
         $output->setTemplate('404');
         return;
     }
     $articleInfo['id'] = $articleId;
     $articleTags = explode(',', $articleInfo['tags']);
     $cateList = LJL_Config::get('Blog_' . ucfirst(APP_BLOG_NAME) . '_Cate', 'CATE');
     $prevNext = Helper_Blog::getPreNextArticle(array('articleId' => $articleId, 'fileds' => array('id', 'title')));
     $prevNext = $this->formatPrevNext($prevNext);
     //面包屑导航
     $nav[0]['title'] = '首页';
     $nav[0]['url'] = WWW_WEB;
     $nav[1]['title'] = $cateList[$articleInfo['cate']][0];
     $nav[1]['url'] = Blog_Plugin_Urls::getListUrl(array('cate' => $articleInfo['cate']));
     $nav[2]['title'] = $articleInfo['title'];
     //seo
     $output->seoArr = array('title' => $articleInfo['title'] . ' - ' . BLOG_SEO_TITTLE . ' | 最红博', 'description' => $articleInfo['descript'], 'keywords' => implode(',', $articleTags));
     $output->cateList = $cateList;
     $output->articleInfo = $articleInfo;
     $output->articleTags = $articleTags;
     $output->prevNext = $prevNext;
     $output->nav = $nav;
     $output->cate = $articleInfo['cate'];
     $output->header = $output->fetchCol("Part/Main/Header");
     $output->footer = $output->fetchCol("Part/Main/Footer");
     $output->navbarTpl = $output->fetchCol("Part/Navbar");
     $output->leftsideCate = $output->fetchCol("Part/LeftsideCate");
     $output->navGuideTpl = $output->fetchCol("Part/Navguide");
     $output->newArticleTpl = $output->fetchCol("Part/NewArticle");
     $output->commentTpl = $output->fetchCol("Part/Comment");
     $output->searchTpl = $output->fetchCol("Part/Search");
     $output->setTemplate('Detail');
 }
예제 #3
0
파일: List.php 프로젝트: hongbo819/LJL
 private function _fulltextSearch($input, $output)
 {
     LJL_Http::setExpires(3600);
     #设置缓存时间
     $tag = $keyword = trim($input->get('keyword'));
     $page = $input->get('page') ? intval($input->get('page')) : 1;
     $start = ($page - 1) * $this->pageSize;
     $query = array('q' => $keyword ? $keyword : '*', 'wt' => 'json', 'rows' => $this->pageSize, 'start' => $start, 'hl' => 'true', 'hl.fl' => 'title,descript', "hl.simple.pre" => '<font color="red">', "hl.simple.post" => '</font>');
     $solrServer = LJL_Config::get('Blog_Solr', 'SOLR');
     $url = $solrServer['url'] . '/select?' . http_build_query($query);
     //echo $url;die;
     $solrRes = LJL_Http::curlPage(array('url' => $url, 'timeout' => 5));
     $searchRes = json_decode($solrRes, true);
     //var_dump($searchRes);
     $cateList = LJL_Config::get('Blog_' . ucfirst(APP_BLOG_NAME) . '_Cate', 'CATE');
     //文章列表
     $articleList = $searchRes['response']['docs'];
     $articleCount = $searchRes['response']['numFound'];
     $articleHl = $searchRes['highlighting'];
     unset($searchRes);
     //组织高亮部分
     //var_dump($articleHl);die;
     foreach ((array) $articleList as $akey => $aval) {
         if (key_exists($aval['id'], $articleHl)) {
             if (isset($articleHl[$aval['id']]['title'])) {
                 $articleList[$akey]['title'] = $articleHl[$aval['id']]['title'][0];
             }
             if (isset($articleHl[$aval['id']]['descript'])) {
                 $articleList[$akey]['descript'] = $articleHl[$aval['id']]['descript'][0];
             }
         }
     }
     //分页相关
     $totalPage = ceil($articleCount / $this->pageSize);
     $pageStr = Libs_Global_Page::getPageString(array('page' => $page, 'pageTotal' => $totalPage, 'urlClass' => 'Blog_Plugin_Urls', 'urlFunc' => 'getSearchUrl', 'args' => array('type' => $input->get('type'), 'keyword' => $keyword, 'page' => $page)));
     //获取各分类下tag标签
     if ($cateList) {
         $tagsArr = [];
         foreach ($cateList as $cateKey => $cateV) {
             $tagsArr[$cateKey] = Helper_Blog::getTags(array('cate' => $cateKey));
         }
     }
     //面包屑导航
     $nav[0]['title'] = '首页';
     $nav[0]['url'] = WWW_WEB;
     $nav[1]['title'] = $keyword;
     //seo
     $output->seoArr = array('title' => $keyword . '搜索-第' . $page . '页  - ' . BLOG_SEO_TITTLE . ' | 最红博 ');
     $output->tagsArr = $tagsArr;
     $output->tag = $keyword;
     $output->cate = '';
     $output->nav = $nav;
     $output->cateList = $cateList;
     $output->pageStr = $pageStr;
     $output->articleList = $articleList;
     $output->header = $output->fetchCol("Part/Main/Header");
     $output->footer = $output->fetchCol("Part/Main/Footer");
     $output->navbarTpl = $output->fetchCol("Part/Navbar");
     $output->leftsideCate = $output->fetchCol("Part/LeftsideCate");
     $output->navGuideTpl = $output->fetchCol("Part/Navguide");
     $output->newArticleTpl = $output->fetchCol("Part/NewArticle");
     $output->searchTpl = $output->fetchCol("Part/Search");
     $output->setTemplate('List');
 }