From 4d3172383ba5c95a1bc5016306bf0c4f64df466f Mon Sep 17 00:00:00 2001 From: raccoon254 Date: Fri, 9 Aug 2024 08:24:04 +0300 Subject: [PATCH] Create the blog view component --- app/Livewire/BlogView.php | 21 ++++++++++ resources/views/blogs/show.blade.php | 41 +++++++++---------- .../views/livewire/blog-renderer.blade.php | 19 ++++++++- resources/views/livewire/blog-view.blade.php | 3 ++ routes/web.php | 3 +- 5 files changed, 62 insertions(+), 25 deletions(-) create mode 100644 app/Livewire/BlogView.php create mode 100644 resources/views/livewire/blog-view.blade.php diff --git a/app/Livewire/BlogView.php b/app/Livewire/BlogView.php new file mode 100644 index 0000000..5297b54 --- /dev/null +++ b/app/Livewire/BlogView.php @@ -0,0 +1,21 @@ +blog = $blog; + } + + public function render(): View + { + return view('blogs.show')->layout('blogs.layout'); + } +} diff --git a/resources/views/blogs/show.blade.php b/resources/views/blogs/show.blade.php index 7edd8ed..019c6ae 100644 --- a/resources/views/blogs/show.blade.php +++ b/resources/views/blogs/show.blade.php @@ -1,25 +1,22 @@ -@extends('layouts.app') - -@section('content') -
-
-
-

{{ $blog->title }}

-

by {{ $blog->user->name }} on {{ $blog->created_at->format('F j, Y') }}

-
- {!! $blog->content !!} -
- @if ($blog->images->isNotEmpty()) -
-

Images

-
- @foreach ($blog->images as $image) - {{ $image->alt }} - @endforeach -
-
- @endif +
+
+
+

{{ $blog->title }}

+

by {{ $blog->user->name }} + on {{ $blog->created_at->format('F j, Y') }}

+
+ {!! $blog->content !!}
+ @if ($blog->images->isNotEmpty()) +
+

Images

+
+ @foreach ($blog->images as $image) + {{ $image->alt }} + @endforeach +
+
+ @endif
-@endsection +
diff --git a/resources/views/livewire/blog-renderer.blade.php b/resources/views/livewire/blog-renderer.blade.php index 379e555..d2c4659 100644 --- a/resources/views/livewire/blog-renderer.blade.php +++ b/resources/views/livewire/blog-renderer.blade.php @@ -1,3 +1,18 @@ -
- {{-- If you look to others for fulfillment, you will never truly be fulfilled. --}} +
+

Blog Posts

+ + @forelse ($blogs as $blog) +
+
+

{{ $blog->title }}

+

by {{ $blog->user->name }} on {{ $blog->created_at->format('F j, Y') }}

+
+ {!! Str::limit($blog->content, 300) !!} +
+ Read More +
+
+ @empty +

No blog posts available.

+ @endforelse
diff --git a/resources/views/livewire/blog-view.blade.php b/resources/views/livewire/blog-view.blade.php new file mode 100644 index 0000000..b2b426d --- /dev/null +++ b/resources/views/livewire/blog-view.blade.php @@ -0,0 +1,3 @@ +
+ {{-- Because she competes with no one, no one can compete with her. --}} +
diff --git a/routes/web.php b/routes/web.php index 2404a59..b6bb91b 100644 --- a/routes/web.php +++ b/routes/web.php @@ -3,6 +3,7 @@ use App\Http\Controllers\ProfileController; use App\Livewire\BlogMaker; use App\Livewire\AutoOrderCreate; +use App\Livewire\BlogRenderer; use App\Livewire\EditProfile; use App\Livewire\ManageUsers; use App\Livewire\OrderCreate; @@ -71,7 +72,7 @@ Route::view('/info/order/payment', 'info.order.payment')->name('info.order.payment'); Route::post('/newsletter/subscribe', [PagesController::class, 'subscribe'])->name('newsletter.subscribe'); -Route::get('/blog', [PagesController::class, 'blog'])->name('blog'); +Route::get('/blog', BlogRenderer::class)->name('blog'); Route::get('/blogs/{blog:slug}', function (Blog $blog) { return view('blogs.show', compact('blog')); })->name('blog.show');