Esempio n. 1
0
 /**
  * 首页
  *
  * @author          mrmsl <*****@*****.**>
  * @date            2013-04-28 17:14:18
  *
  * @return void 无返回值
  */
 public function indexAction()
 {
     $page_size = 60;
     $total = $this->_model->table(TB_TAG)->count('DISTINCT tag');
     $page_info = Filter::page($total, 'page', $page_size);
     $page = $page_info['page'];
     $page_one = $page < 2;
     $tag_arr = $this->_model->table(TB_TAG)->order('searches DESC')->field('DISTINCT `tag`')->limit($page_info['limit'])->select();
     $paging = new Paging(array('_url_tpl' => BASE_SITE_URL . 'tag/page/\\1.shtml', '_total_page' => $page_info['total_page'], '_now_page' => $page, '_page_size' => $page_size));
     $o = $this->getViewTemplate()->assign(array('web_title' => L('TAG'), 'tag_arr' => $tag_arr, 'paging' => $paging->getHtml(), 'page' => $page_one ? '' : $page));
     $this->_display(null, null, $page);
 }
Esempio n. 2
0
 /**
  * 渲染博客列表
  *
  * @author          mrmsl <*****@*****.**>
  * @date            2013-04-28 16:55:45
  *
  * @param string|array $cate_info 数组为分类,否则为标签
  *
  * @return void 无返回值
  */
 private function _fetchBlog($cate_info = null)
 {
     if (is_array($cate_info)) {
         //分类
         $is_tag = false;
         $cate_id = $cate_info['cate_id'];
         $table = TB_BLOG;
         $where = array('b.is_delete' => 0, 'b.is_issue' => 1);
         if ($cate_id) {
             //category.shtml
             $where['b.cate_id'] = array('IN', $this->_getChildrenIds($cate_id));
         }
         $url_tpl = str_replace('.shtml', '/page/\\1.shtml', $cate_info['link_url']);
         $cache_flag = $cate_id;
         $total = $this->_model->table(TB_BLOG)->alias('b')->where($where)->count();
         $this->_model->alias('b');
         //b.title
     } else {
         //标签
         $this->_model->table(TB_TAG)->where(array('tag' => $cate_info))->setInc('searches');
         //搜索次数+1
         $is_tag = true;
         $table = TB_BLOG . ' AS b JOIN ' . TB_TAG . ' AS t ON t.blog_id=b.blog_id';
         $where = array('t.tag' => array('IN', $cate_info), 'b.is_delete' => 0, 'b.is_issue' => 1);
         $url_tpl = BASE_SITE_URL . 'tag/' . urlencode($cate_info) . '/page/\\1.shtml';
         $cache_flag = md5(strtolower($cate_info));
         $total = $this->_model->table(TB_BLOG)->alias('b')->join(' JOIN ' . TB_TAG . ' AS t ON b.blog_id=t.blog_id')->where($where)->count('DISTINCT b.blog_id');
     }
     $page_info = Filter::page($total, 'page', PAGE_SIZE);
     $page = $page_info['page'];
     $page_one = $page < 2;
     $blog_arr = $this->_model->table($table)->where($where)->order('b.blog_id DESC')->limit($page_info['limit'])->field('b.blog_id,b.title,b.link_url,b.cate_id,b.add_time,b.summary,b.seo_keyword,b.seo_description')->select();
     $paging = new Paging(array('_url_tpl' => $url_tpl, '_total_page' => $page_info['total_page'], '_now_page' => $page, '_page_size' => PAGE_SIZE));
     $o = $this->getViewTemplate($page_one && !$is_tag ? 'build_html' : null)->assign(array('blog_arr' => $blog_arr, 'paging' => $paging->getHtml(), 'page' => $page_one ? '' : $page));
     if ($is_tag) {
         //标签
         $o->assign(array('web_title' => $cate_info . TITLE_SEPARATOR . L('TAG'), 'tag' => $cate_info, 'seo_keywords' => $cate_info));
     } else {
         //分类
         $o->assign(array('web_title' => $cate_id ? $this->nav($cate_id, 'cate_name', null, TITLE_SEPARATOR) : $cate_info['cate_name'], 'cate_info' => $cate_info, 'tag' => ''));
     }
     $content = $o->fetch(CONTROLLER_NAME, ACTION_NAME, $cache_flag . '-' . $page);
     if ($page_one && !$is_tag) {
         $filename = str_replace(BASE_SITE_URL, WWWROOT, $cate_info['link_url']);
         new_mkdir(dirname($filename));
         //file_put_contents($filename, $content);
     }
     echo $content;
 }
 /**
  * 首页
  *
  * @author          mrmsl <*****@*****.**>
  * @date            2013-02-21 13:30:55
  *
  * @return void 无返回值
  */
 public function indexAction()
 {
     $total = $this->_model->count();
     $page_info = Filter::page($total, 'page', PAGE_SIZE);
     $page = $page_info['page'];
     $page_one = $page < 2;
     $blog_arr = $this->_model->order('blog_id DESC')->limit($page_info['limit'])->select();
     $paging = new Paging(array('_url_tpl' => BASE_SITE_URL . 'miniblog/page/\\1.shtml', '_total_page' => $page_info['total_page'], '_now_page' => $page, '_page_size' => PAGE_SIZE));
     $o = $this->getViewTemplate($page_one ? 'build_html' : null)->assign(array('web_title' => L('MINIBLOG'), 'blog_arr' => $blog_arr, 'paging' => $paging->getHtml(), 'page' => $page_one ? '' : $page));
     $content = $o->fetch(CONTROLLER_NAME, ACTION_NAME, $page);
     if ($page_one) {
         $filename = WWWROOT . 'miniblog.shtml';
         //file_put_contents($filename, $content);
     }
     echo $content;
 }
Esempio n. 4
0
 /**
  * 首页
  *
  * @author          mrmsl <*****@*****.**>
  * @date            2013-02-21 13:44:11
  *
  * @return void 无返回值
  */
 public function indexAction()
 {
     $total = $this->_model->table(TB_COMMENTS)->where($where = 'type=' . COMMENT_TYPE_GUESTBOOK . ' AND status=' . COMMENT_STATUS_PASS . ' AND parent_id=0')->count();
     $page_info = Filter::page($total, 'page', PAGE_SIZE);
     $page = $page_info['page'];
     $page_one = $page < 2;
     $guestbook_arr = $this->_model->table(TB_COMMENTS)->where($where)->order('last_reply_time DESC')->limit($page_info['limit'])->select();
     $paging = new Paging(array('_url_tpl' => BASE_SITE_URL . 'guestbook/page/\\1.shtml', '_total_page' => $page_info['total_page'], '_now_page' => $page, '_page_size' => PAGE_SIZE));
     $o = $this->getViewTemplate($page_one ? 'build_html' : null)->assign(array('web_title' => L('GUESTBOOK'), 'guestbook_html' => $this->_getRecurrsiveComments($guestbook_arr), 'paging' => $paging->getHtml(), 'page' => $page_one ? '' : $page));
     $content = $o->fetch(CONTROLLER_NAME, ACTION_NAME, $page);
     if ($page_one) {
         $filename = WWWROOT . 'guestbook.shtml';
         //file_put_contents($filename, $content);
     }
     echo $content;
 }