{$return}; } return $category; } return new Category; } /** * Notes: 获取文章分类详情 * * @Author: 玄尘 * @Date : 2020/9/10 13:21 * @param $categoryId * @param string $result * @return \App\Models\Article */ function getOneArticleBYCate($categoryId, $result = '') { $info = Article::where('status', 1) ->ByCategory($categoryId) ->latest('sort') ->latest() ->first(); if ($info) { if ($result) { return $info->{$result}; } return $info; } else { return ''; } return new Article; } /** * Notes: 获取分类下的文章 * * @Author: 玄尘 * @Date : 2020/9/10 10:05 * @param $categoryId * @param $take * @return \App\Models\Article */ function getArticlesBYCate($categoryId, $take = 8, $mark = 'one') { if ($mark == 'one') { $articles = Article::where('status', 1) ->ByCategory($categoryId) ->latest('sort') ->latest() ->take($take) ->get(); } else { $cate = Category::find($categoryId); $ids = $cate->getAllChildrenId(); $articles = Article::where('status', 1) ->ByCategory($ids) ->latest('sort') ->latest() ->take($take) ->get(); } return $articles; } /** * Notes: 获取带图片的文章 * * @Author: 玄尘 * @Date: 2022/3/4 16:52 * @param $categoryId * @param $take * @return mixed */ function getArticlesAndCoverBYCate($categoryId, $take = 8) { $cate = Category::find($categoryId); $ids = $cate->getAllChildrenId(); return Article::where('status', 1) ->ByCategory($ids) ->where(function ($query) { $query->whereNotNull('cover')->orWhere('cover', '<>', ''); }) ->latest('sort') ->latest() ->take($take) ->get(); } //获取子分类 function getCateChild($categoryId) { return Category::where('status', 1) ->where('parent_id', $categoryId) ->orderBy('order', 'asc') ->get(); } //获取顶级分类 function getTopCate($categoryId) { $parent = Category::find($categoryId); while ($parent->parent_id != 0) { $parent = $parent->parent; } return $parent; } //获取一个广告 function getOneAdvertByCate($categoryId, $result = '') { $info = Advert::where('category_id', $categoryId) ->latest('sort') ->latest() ->first(); if ($info) { if ($result) { return $info->{$result}; } return $info; } else { return ''; } return new Advert; } function getAdvertsByCate($categoryId, $take = 8) { return Advert::where('category_id', $categoryId) ->latest('sort') ->latest() ->take($take)->get(); }