46 lines
1.2 KiB
PHP
46 lines
1.2 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Front;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use App\Models\Category;
|
|
use App\Models\Post;
|
|
use Artesaos\SEOTools\Facades\SEOTools;
|
|
use Illuminate\Http\Request;
|
|
|
|
class FrontListController extends Controller
|
|
{
|
|
public function index(Request $request)
|
|
{
|
|
|
|
$title = 'Latest News from EchoScoop';
|
|
|
|
SEOTools::metatags();
|
|
SEOTools::twitter();
|
|
SEOTools::opengraph();
|
|
SEOTools::jsonLd();
|
|
SEOTools::setTitle($title, false);
|
|
|
|
$posts = Post::where('status', 'publish')->orderBy('published_at', 'desc')->simplePaginate(10) ?? collect();
|
|
|
|
return view('front.post_list', compact('posts'));
|
|
}
|
|
|
|
public function category(Request $request, $category_slug)
|
|
{
|
|
$category = Category::where('slug', $category_slug)->first();
|
|
|
|
$posts = $category?->posts()->where('status', 'publish')->orderBy('published_at', 'desc')->simplePaginate(10) ?? collect();
|
|
|
|
$title = $category->name.' News from EchoScoop';
|
|
|
|
SEOTools::metatags();
|
|
SEOTools::twitter();
|
|
SEOTools::opengraph();
|
|
SEOTools::jsonLd();
|
|
SEOTools::setTitle($title, false);
|
|
|
|
return view('front.post_list', compact('category', 'posts'));
|
|
}
|
|
}
|