feat: enhance Open Graph meta tags in app layout for better sharing experience

This commit is contained in:
Yoga Pangestu 2026-07-20 22:50:05 +07:00
parent 1e8fd5b595
commit 0f5bf66320
2 changed files with 11 additions and 4 deletions

View File

@ -11,6 +11,7 @@
use App\Http\Requests\Admin\Manage\CuttingStatusTransitionRequest; use App\Http\Requests\Admin\Manage\CuttingStatusTransitionRequest;
use App\Models\Cutting; use App\Models\Cutting;
use App\Services\Manage\CuttingService; use App\Services\Manage\CuttingService;
use App\Settings\SystemSettings;
use Illuminate\Http\RedirectResponse; use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Validation\ValidationException; use Illuminate\Validation\ValidationException;
@ -110,8 +111,14 @@ public function transitionStatus(CuttingStatusTransitionRequest $request, Cuttin
public function share(Cutting $cutting): Response public function share(Cutting $cutting): Response
{ {
$data = $this->cuttingService->findForShare($cutting);
$appName = app(SystemSettings::class)->app_name;
return Inertia::render('admin/manage/cuttings/Share', [ return Inertia::render('admin/manage/cuttings/Share', [
'cutting' => $this->cuttingService->findForShare($cutting), 'cutting' => $data,
'ogTitle' => "Detail Cutting #{$cutting->id} - {$appName}",
'ogDescription' => $cutting->description ?: "Rincian data proses cutting #{$cutting->id}",
'ogImage' => $data->images[0]['url'] ?? asset('assets/logo.png'),
]); ]);
} }
} }

View File

@ -30,9 +30,9 @@
@php @php
$appName = config('app.name'); $appName = config('app.name');
$ogTitle = $appName; $ogTitle = $page['props']['ogTitle'] ?? $appName;
$ogDescription = $appName . ' - Progressive Web App'; $ogDescription = $page['props']['ogDescription'] ?? ($appName . ' - Progressive Web App');
$ogImage = asset('assets/logo.png'); $ogImage = $page['props']['ogImage'] ?? asset('assets/logo.png');
@endphp @endphp
<meta property="og:title" content="{{ $ogTitle }}" /> <meta property="og:title" content="{{ $ogTitle }}" />