Esempio n. 1
0
 /**
  * 侦测当前元(分类|标签)是否有内容(文章|单页)在所使用
  *
  * @param  string $type 元模型类型 分类category,标签tag
  * @param  int $id
  * @return boolean 如果元被内容所使用,则返回true,否则返回false
  */
 public function hasContent($type = 'category', $id)
 {
     if ($type === 'tag') {
         return true;
     } else {
         $content = $this->content->article()->where('category_id', '=', $id)->get();
         if ($content->isEmpty()) {
             return false;
         } else {
             return true;
         }
     }
 }
Esempio n. 2
0
 /**
  * 获取特定cat_id分类下文章
  *
  * @param  string $cat_id 分类id
  * @param  string|null $flag 推荐位
  * @param  string $lang 内容语言版本
  * @param  int $number 数量
  * @return Illuminate\Support\Collection
  */
 public function getArticleList($cat_id = '0', $flag = null, $number = 5)
 {
     $map = [];
     if (ctype_digit($cat_id)) {
         $map['cat_id'] = $cat_id;
     } else {
         $map['cat_id'] = '0';
     }
     if ($flag !== null && is_string($flag)) {
         $map['flag'] = $flag;
     }
     if (is_numeric($number)) {
         if ($number > 10) {
             $map['number'] = 5;
         } else {
             $map['number'] = $number;
         }
     } else {
         $map['number'] = 5;
     }
     $articles = Content::article()->where('category_id', '=', $map['cat_id'])->where(function ($query) use($map) {
         if (array_key_exists('flag', $map)) {
             $query->where('flag', 'like', '%' . $map['flag'] . '%');
         }
     })->orderBy('created_at', 'desc')->take($number)->get();
     return $articles;
 }