mirror of
https://github.com/Einundzwanzig-Podcast/einundzwanzig-portal.git
synced 2025-12-11 06:46:47 +00:00
seo image added
This commit is contained in:
@@ -3,6 +3,8 @@
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Contracts\Filesystem\Filesystem;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
use League\Glide\Responses\LaravelResponseFactory;
|
||||
use League\Glide\ServerFactory;
|
||||
|
||||
@@ -12,18 +14,24 @@ class ImageController extends Controller
|
||||
* Handle the incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function __invoke(Filesystem $filesystem, $path)
|
||||
public function __invoke(Request $request, Filesystem $filesystem, $path)
|
||||
{
|
||||
if (str($request->path())->contains('img-public')) {
|
||||
$filesystemPublic = Storage::disk('publicDisk');
|
||||
}
|
||||
|
||||
$server = ServerFactory::create([
|
||||
'response' => new LaravelResponseFactory(app('request')),
|
||||
'source' => $filesystem->getDriver(),
|
||||
'cache' => $filesystem->getDriver(),
|
||||
'response' => new LaravelResponseFactory(app('request')),
|
||||
'source' => str($request->path())->contains('img-public') ? $filesystemPublic->getDriver() : $filesystem->getDriver(),
|
||||
'cache' => $filesystem->getDriver(),
|
||||
'cache_path_prefix' => '.cache',
|
||||
'base_url' => 'img',
|
||||
'base_url' => $request->route()
|
||||
->getName() === 'imgPublic' ? '' : 'img',
|
||||
]);
|
||||
|
||||
return $server->getImageResponse('public/'.$path, request()->all());
|
||||
return $server->getImageResponse($path, request()->all());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -67,7 +67,7 @@ class Welcome extends Component
|
||||
'SEOData' => new SEOData(
|
||||
title: __('Welcome'),
|
||||
description: __('Welcome to the portal of the Einundzwanzig Community.'),
|
||||
image: asset('img/screenshot.png')
|
||||
image: url()->route('imgPublic', ['path' => 'img/screenshot.png', 'h' => 630, 'w' => 1200, 'fit' => 'crop'])
|
||||
),
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -115,7 +115,11 @@ class InternArticleView extends Component
|
||||
title: $this->libraryItem->name,
|
||||
description: strip_tags($this->libraryItem->excerpt) ?? __('Here we post important news that is relevant for everyone.'),
|
||||
author: $this->libraryItem->lecturer->name,
|
||||
image: $this->libraryItem->getFirstMedia('main') ? $this->libraryItem->getFirstMediaUrl('main') : asset('img/einundzwanzig-wallpaper-benrath.png'),
|
||||
image: $this->libraryItem->getFirstMedia('main')
|
||||
? $this->libraryItem->getFirstMediaUrl('main', 'seo')
|
||||
: url()->route('imgPublic', [
|
||||
'path' => 'img/einundzwanzig-wallpaper-benrath.png', 'h' => 630, 'w' => 1200, 'fit' => 'crop'
|
||||
]),
|
||||
published_time: Carbon::parse($this->libraryItem->created_at),
|
||||
type: 'article',
|
||||
),
|
||||
|
||||
@@ -81,6 +81,9 @@ class LibraryItem extends Model implements HasMedia, Sortable, Feedable
|
||||
->addMediaConversion('preview')
|
||||
->fit(Manipulations::FIT_CROP, 300, 300)
|
||||
->nonQueued();
|
||||
$this->addMediaConversion('seo')
|
||||
->fit(Manipulations::FIT_CROP, 1200, 630)
|
||||
->nonQueued();
|
||||
$this->addMediaConversion('thumb')
|
||||
->fit(Manipulations::FIT_CROP, 130, 130)
|
||||
->width(130)
|
||||
|
||||
@@ -50,6 +50,12 @@ return [
|
||||
'throw' => false,
|
||||
],
|
||||
|
||||
'publicDisk' => [
|
||||
'driver' => 'local',
|
||||
'root' => public_path(),
|
||||
'throw' => false,
|
||||
],
|
||||
|
||||
's3' => [
|
||||
'driver' => 's3',
|
||||
'key' => env('AWS_ACCESS_KEY_ID'),
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
interessierte Leute und interessante Gesprächspartner.
|
||||
</p>
|
||||
<p class="text-sm leading-6 text-white">PS: Bitcoin ist begrenzt und daher nicht von Staaten oder Notenbanken
|
||||
inflationierbar. Es wird niemals mehr als 21 Millionen Bitcoin geben. Daher auch der Name “Einundzwanzig”
|
||||
inflationierbar. Es wird niemals mehr als 21 Millionen bitcoins geben. Daher auch der Name “Einundzwanzig”
|
||||
😉
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -65,7 +65,7 @@
|
||||
<div class="flex-shrink-0 pt-6">
|
||||
<a href="{{ route('article.view', ['libraryItem' => $libraryItem]) }}">
|
||||
<img class="h-48 w-full object-contain"
|
||||
src="{{ $libraryItem->getFirstMediaUrl('main') }}"
|
||||
src="{{ $libraryItem->getFirstMediaUrl('main', 'seo') }}"
|
||||
alt="{{ $libraryItem->name }}">
|
||||
</a>
|
||||
</div>
|
||||
|
||||
@@ -11,6 +11,10 @@ Route::get('/img/{path}', \App\Http\Controllers\ImageController::class)
|
||||
->where('path', '.*')
|
||||
->name('img');
|
||||
|
||||
Route::get('/img-public/{path}', \App\Http\Controllers\ImageController::class)
|
||||
->where('path', '.*')
|
||||
->name('imgPublic');
|
||||
|
||||
Route::get('auth/auth47', \App\Http\Livewire\Auth\Auth47Component::class)
|
||||
->name('auth.auth47');
|
||||
|
||||
|
||||
Reference in New Issue
Block a user