diff --git a/app/Enums/Page.php b/app/Enums/Page.php index ae7fe33..e8848d4 100644 --- a/app/Enums/Page.php +++ b/app/Enums/Page.php @@ -23,6 +23,11 @@ use Kwaadpepper\Enum\BaseEnumRoutable; * @method static self foodProducts() * @method static self mentions() * @method static self charte() + * @method static self home() + * @method static self marque() + * @method static self news() + * @method static self foodservice() + * @method static self gammes() */ class Page extends BaseEnumRoutable { @@ -49,6 +54,11 @@ class Page extends BaseEnumRoutable 'foodProducts' => 17, 'mentions' => 18, 'charte' => 19, + 'home' => 20, + 'marque' => 21, + 'news' => 22, + 'foodservice' => 23, + 'gammes' => 24 ]; } } diff --git a/app/Http/Controllers/Bo/SeoDataController.php b/app/Http/Controllers/Bo/SeoDataController.php new file mode 100644 index 0000000..b0b9b38 --- /dev/null +++ b/app/Http/Controllers/Bo/SeoDataController.php @@ -0,0 +1,91 @@ +fill($request->validated()); + $SeoDatum->save(); + + return redirect()->route('bo.seo_data.edit', $SeoDatum->page) + ->with('success', trans('Modifications enregistrées !')); + } + + /** + * Remove the specified resource from storage. + * + * @param \App\Models\SeoDatum $SeoDatum + * @return \Illuminate\Http\Response + */ + public function destroy(SeoDatum $SeoDatum) + { + // + } +} diff --git a/app/Http/Controllers/FoodServiceController.php b/app/Http/Controllers/FoodServiceController.php new file mode 100644 index 0000000..63a4563 --- /dev/null +++ b/app/Http/Controllers/FoodServiceController.php @@ -0,0 +1,18 @@ +first(); + + return view('front.food-service', compact('seoDatum')); + } +} diff --git a/app/Http/Controllers/GammesController.php b/app/Http/Controllers/GammesController.php index 44970d0..ae6b750 100644 --- a/app/Http/Controllers/GammesController.php +++ b/app/Http/Controllers/GammesController.php @@ -2,8 +2,10 @@ namespace App\Http\Controllers; +use App\Enums\Page; use App\Models\Gamme; use App\Models\Product; +use App\Models\SeoDatum; class GammesController extends Controller { @@ -15,7 +17,10 @@ class GammesController extends Controller $gammes = $gammes->whereNotIn('slug','food-service'); $nb_gammes = $gammes->count(); - return view('front.gammes.index', compact('gammes', 'nb_gammes')); + $page = Page::gammes(); + $seoDatum = SeoDatum::where('page',$page)->first(); + + return view('front.gammes.index', compact('gammes', 'nb_gammes', 'seoDatum')); } public function show(Gamme $gamme) @@ -38,6 +43,11 @@ class GammesController extends Controller ->orderBy('name') ->get(); - return view('front.gammes.show', compact('gamme', 'products')); + //make ghost seoDatum from the gamme + $seoDatum = new SeoDatum(); + $seoDatum->title = $gamme->title; + $seoDatum->description = $gamme->text; + + return view('front.gammes.show', compact('gamme', 'products', 'seoDatum')); } } diff --git a/app/Http/Controllers/HomeController.php b/app/Http/Controllers/HomeController.php index 7dfec10..79801f2 100644 --- a/app/Http/Controllers/HomeController.php +++ b/app/Http/Controllers/HomeController.php @@ -2,6 +2,8 @@ namespace App\Http\Controllers; +use App\Enums\Page; +use App\Models\SeoDatum; use App\Models\Slide; use App\Models\Slider; use Illuminate\Support\Carbon; @@ -10,6 +12,10 @@ class HomeController extends Controller { public function index() { + + $page = Page::home(); + $seoDatum = SeoDatum::where('page',$page)->first(); + $slider = Slider::where('published', 1)->first(); if ($slider) { $slides = Slide::whereHas('slider', function ($q) use ($slider) { @@ -26,9 +32,9 @@ class HomeController extends Controller }); })->orderBy('order', 'ASC') ->get(); - return view('front.home', compact('slider', 'slides')); + return view('front.home', compact('slider', 'slides', 'seoDatum')); } else { - return view('front.home', compact('slider')); + return view('front.home', compact('slider', 'seoDatum')); } } } diff --git a/app/Http/Controllers/LegalsController.php b/app/Http/Controllers/LegalsController.php new file mode 100644 index 0000000..79ed21a --- /dev/null +++ b/app/Http/Controllers/LegalsController.php @@ -0,0 +1,22 @@ +value)->first(); + + //make ghost seoDatum from the gamme + $seoDatum = new SeoDatum(); + $seoDatum->title = $mentions_legales->title; + + return view('front.legals', compact('seoDatum')); + } +} diff --git a/app/Http/Controllers/MarqueController.php b/app/Http/Controllers/MarqueController.php new file mode 100644 index 0000000..79e41c1 --- /dev/null +++ b/app/Http/Controllers/MarqueController.php @@ -0,0 +1,18 @@ +first(); + + return view('front.a-propos', compact('seoDatum')); + } +} diff --git a/app/Http/Controllers/NewsController.php b/app/Http/Controllers/NewsController.php new file mode 100644 index 0000000..332cd9d --- /dev/null +++ b/app/Http/Controllers/NewsController.php @@ -0,0 +1,18 @@ +first(); + + return view('front.news', compact('seoDatum')); + } +} diff --git a/app/Http/Controllers/PolicyController.php b/app/Http/Controllers/PolicyController.php new file mode 100644 index 0000000..cd83b21 --- /dev/null +++ b/app/Http/Controllers/PolicyController.php @@ -0,0 +1,22 @@ +value)->first(); + + //make ghost seoDatum from the gamme + $seoDatum = new SeoDatum(); + $seoDatum->title = $privacy_policy->title; + + return view('front.policy', compact('seoDatum')); + } +} diff --git a/app/Http/Controllers/ProductsController.php b/app/Http/Controllers/ProductsController.php index 161b764..6f04d09 100644 --- a/app/Http/Controllers/ProductsController.php +++ b/app/Http/Controllers/ProductsController.php @@ -4,6 +4,7 @@ namespace App\Http\Controllers; use App\Models\Gamme; use App\Models\Product; +use App\Models\SeoDatum; use Illuminate\Http\Request; class ProductsController extends Controller @@ -13,7 +14,13 @@ class ProductsController extends Controller { //$product = Product::whereSlug($product->slug)->first(); //dd($product); - return view('front.product', compact('product', 'gamme')); + + //make ghost seoDatum from the gamme + $seoDatum = new SeoDatum(); + $seoDatum->title = $product->name; + $seoDatum->description = $product->description; + + return view('front.product', compact('product', 'gamme', 'seoDatum')); } public function search(Request $request) { diff --git a/app/Http/Middleware/InitVarsGlobals.php b/app/Http/Middleware/InitVarsGlobals.php index 1124288..b9040c3 100644 --- a/app/Http/Middleware/InitVarsGlobals.php +++ b/app/Http/Middleware/InitVarsGlobals.php @@ -57,8 +57,10 @@ class InitVarsGlobals ])->first(); // Limitation à 3 produits affichés sur la homepage $products_home = Product::where('is_on_top', true)->take(3)->get(); - // Limitation à 6 produits affichés sur la page Food Service - $products_food = Product::where('is_food_service', true)->take(6)->get(); + // produits affichés sur la page news + $products_news = Product::where('is_news', true)->get(); + // Produits affichés sur la page Food Service + $products_food = Product::where('is_food_service', true)->get(); $pictos_marqueBloc2 = Picto::where('page', Page::marqueBloc2()->value)->get(); $pictos_food = Picto::where('page', Page::foodBloc2()->value)->get(); @@ -87,6 +89,7 @@ class InitVarsGlobals View::share('posts', $posts); View::share('products_home', $products_home); + View::share('products_news', $products_news); View::share('products_food', $products_food); View::share('advice_news', $advice_news); diff --git a/app/Http/Requests/StoreProductRequest.php b/app/Http/Requests/StoreProductRequest.php index e4f440e..76e5bb7 100644 --- a/app/Http/Requests/StoreProductRequest.php +++ b/app/Http/Requests/StoreProductRequest.php @@ -150,6 +150,7 @@ class StoreProductRequest extends FormRequest 'plusproduit' => $tabPlusProduit, 'is_published' => $this->is_published ? true : false, 'is_on_top' => $this->is_on_top ? true : false, + 'is_news' => $this->is_news ? true : false, 'is_food_service' => $this->is_food_service ? true : false, 'is_halal' => $this->is_halal ? true : false, ]); @@ -180,6 +181,7 @@ class StoreProductRequest extends FormRequest 'pictogramme2' => 'nullable|image|mimes:png|max:1024|dimensions:width=141,height=100', 'is_published' => 'nullable|boolean', 'is_on_top' => 'nullable|boolean', + 'is_news' => 'nullable|boolean', 'is_food_service' => 'nullable|boolean', 'is_halal' => 'nullable|boolean', // 'seo_title' => 'required|max:255', diff --git a/app/Http/Requests/StoreSeoDataRequest.php b/app/Http/Requests/StoreSeoDataRequest.php new file mode 100644 index 0000000..5f3601b --- /dev/null +++ b/app/Http/Requests/StoreSeoDataRequest.php @@ -0,0 +1,32 @@ +check(); + } + + /** + * Get the validation rules that apply to the request. + * + * @return array + */ + public function rules() + { + return [ + 'title' => 'required|max:255', + 'description' => 'sometimes|max:255', + 'keywords' => 'sometimes|max:255', + ]; + } +} diff --git a/app/Models/Product.php b/app/Models/Product.php index b4cd42f..995915b 100644 --- a/app/Models/Product.php +++ b/app/Models/Product.php @@ -24,6 +24,7 @@ class Product extends Model 'plusproduit', 'is_published', 'is_on_top', + 'is_news', 'is_halal', 'is_food_service', 'seo_title', diff --git a/app/Models/SeoDatum.php b/app/Models/SeoDatum.php new file mode 100644 index 0000000..b6c48be --- /dev/null +++ b/app/Models/SeoDatum.php @@ -0,0 +1,50 @@ + Page::class + ]; + + /** + * Engagment fillable fields + * + * @var array + */ + protected $fillable = [ + 'title', + 'description', + 'keywords' + ]; + + /** + * Engagment translatable fields array + * + * @var array + */ + public $translatable = [ + 'title', + 'description', + 'keywords' + ]; + + /** + * Get the route key for the model. + * + * @return string + */ + public function getRouteKeyName() + { + return 'page'; + } +} diff --git a/composer.json b/composer.json index 55afe19..df852f2 100644 --- a/composer.json +++ b/composer.json @@ -64,7 +64,10 @@ "config": { "optimize-autoloader": true, "preferred-install": "dist", - "sort-packages": true + "sort-packages": true, + "allow-plugins": { + "dealerdirect/phpcodesniffer-composer-installer": true + } }, "minimum-stability": "dev", "prefer-stable": true diff --git a/database/factories/ProductFactory.php b/database/factories/ProductFactory.php index 8e37616..ae4fecf 100644 --- a/database/factories/ProductFactory.php +++ b/database/factories/ProductFactory.php @@ -130,6 +130,7 @@ class ProductFactory extends Factory 'plusproduit' => json_encode([$tabPlusProduit1, $tabPlusProduit2, $tabPlusProduit3]), 'is_published' => true, 'is_on_top' => rand(true, false), + 'is_news' => rand(true, false), 'is_food_service' => rand(true, false), 'is_halal' => rand(true, false), 'seo_title' => $this->faker->text(5), diff --git a/database/migrations/2022_05_12_101807_add_is_news_on_products.php b/database/migrations/2022_05_12_101807_add_is_news_on_products.php new file mode 100644 index 0000000..79a8bbe --- /dev/null +++ b/database/migrations/2022_05_12_101807_add_is_news_on_products.php @@ -0,0 +1,32 @@ +boolean('is_news')->after('is_on_top'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('products', function (Blueprint $table) { + $table->dropColumn('is_news'); + }); + } +} diff --git a/database/migrations/2022_05_12_110531_create_seo_data_table.php b/database/migrations/2022_05_12_110531_create_seo_data_table.php new file mode 100644 index 0000000..2353c1e --- /dev/null +++ b/database/migrations/2022_05_12_110531_create_seo_data_table.php @@ -0,0 +1,39 @@ +id(); + $table->smallInteger('page')->unique(); + $table->text('title')->nullable(); + $table->text('description')->nullable(); + $table->text('keywords')->nullable(); + $table->timestamps(); + }); + + $seeder = new SeoDataSeeder(); + $seeder->run(); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('seo_data'); + } +} diff --git a/database/seeders/GammesSeeder.php b/database/seeders/GammesSeeder.php index 3fa08c0..6d16be5 100644 --- a/database/seeders/GammesSeeder.php +++ b/database/seeders/GammesSeeder.php @@ -162,6 +162,7 @@ class GammesSeeder extends Seeder $product->plusproduit = json_encode([$tabPlusProduit1, $tabPlusProduit2]); $product->is_published = true; $product->is_on_top = rand(true, false); + $product->is_news = rand(true, false); $product->is_food_service = rand(true, false); $product->is_halal = rand(true, false); $product->seo_title = 'Chicken franks, poulet, recettes, qualité'; @@ -226,6 +227,7 @@ class GammesSeeder extends Seeder $product->plusproduit = json_encode([$tabPlusProduit1, $tabPlusProduit2]); $product->is_published = true; $product->is_on_top = rand(true, false); + $product->is_news = rand(true, false); $product->is_food_service = rand(true, false); $product->is_halal = rand(true, false); $product->seo_title = 'recette, qualité, Chicken franks, plaisir, gourmandise'; @@ -254,6 +256,7 @@ class GammesSeeder extends Seeder $product->plusproduit = json_encode([$tabPlusProduit1, $tabPlusProduit2, $tabPlusProduit3]); $product->is_published = true; $product->is_on_top = rand(true, false); + $product->is_news = rand(true, false); $product->is_food_service = rand(true, false); $product->is_halal = rand(true, false); $product->seo_title = 'recette, qualité, Chicken franks, plaisir, gourmandise'; @@ -312,6 +315,7 @@ class GammesSeeder extends Seeder $product->plusproduit = json_encode([$tabPlusProduit1, $tabPlusProduit2, $tabPlusProduit3]); $product->is_published = true; $product->is_on_top = rand(true, false); + $product->is_news = rand(true, false); $product->is_food_service = rand(true, false); $product->is_halal = rand(true, false); $product->seo_title = 'recette, qualité, viande, cuisse, steak haché, poulet'; @@ -351,6 +355,7 @@ class GammesSeeder extends Seeder $product->plusproduit = json_encode([$tabPlusProduit1]); $product->is_published = true; $product->is_on_top = rand(true, false); + $product->is_news = rand(true, false); $product->is_food_service = rand(true, false); $product->is_halal = rand(true, false); $product->seo_title = 'volaille, poulet, Doux, qualités'; diff --git a/database/seeders/SeoDataSeeder.php b/database/seeders/SeoDataSeeder.php new file mode 100644 index 0000000..9598e09 --- /dev/null +++ b/database/seeders/SeoDataSeeder.php @@ -0,0 +1,53 @@ +title = "Page d'accueil"; + $seo_data->description = ""; + $seo_data->keywords = ""; + $seo_data->page = Page::home(); + $seo_data->save(); + + $seo_data = new SeoDatum(); + $seo_data->title = "Marque"; + $seo_data->description = ""; + $seo_data->keywords = ""; + $seo_data->page = Page::marque(); + $seo_data->save(); + + $seo_data = new SeoDatum(); + $seo_data->title = "Actualités"; + $seo_data->description = ""; + $seo_data->keywords = ""; + $seo_data->page = Page::news(); + $seo_data->save(); + + $seo_data = new SeoDatum(); + $seo_data->title = "Food Service"; + $seo_data->description = ""; + $seo_data->keywords = ""; + $seo_data->page = Page::foodservice(); + $seo_data->save(); + + $seo_data = new SeoDatum(); + $seo_data->title = "Les Gammes"; + $seo_data->description = ""; + $seo_data->keywords = ""; + $seo_data->page = Page::gammes(); + $seo_data->save(); + } +} diff --git a/resources/views/back/products/form-inputs.blade.php b/resources/views/back/products/form-inputs.blade.php index 73646da..50fca22 100644 --- a/resources/views/back/products/form-inputs.blade.php +++ b/resources/views/back/products/form-inputs.blade.php @@ -132,6 +132,11 @@ $plusproduit = json_decode($product->plusproduit); @include('back.modules.input-error', ['inputName'=>'is_on_top']) +
+ is_news) === 1 || old('is_news', $product->is_news) === 'on')checked="checked" @endif> + + @include('back.modules.input-error', ['inputName'=>'is_news']) +
is_food_service) === 1 || old('is_food_service', $product->is_food_service) === 'on')checked="checked" @endif> diff --git a/resources/views/back/products/index.blade.php b/resources/views/back/products/index.blade.php index 800861e..a1604ae 100644 --- a/resources/views/back/products/index.blade.php +++ b/resources/views/back/products/index.blade.php @@ -19,6 +19,7 @@ {{ __('Gamme') }} {{ __('Publié') }} {{ __('A la une') }} + {{ __('Actualités') }} {{ __('Food Service') }} {{ __('Halal') }} @@ -42,6 +43,7 @@ @endif {{$product->is_published ? 'Oui' : 'Non'}} {{$product->is_on_top ? 'Oui' : 'Non'}} + {{$product->is_news ? 'Oui' : 'Non'}} {{$product->is_food_service ? 'Oui' : 'Non'}} {{$product->is_halal ? 'Oui' : 'Non'}} diff --git a/resources/views/back/seo_data/edit.blade.php b/resources/views/back/seo_data/edit.blade.php new file mode 100644 index 0000000..4e3aa84 --- /dev/null +++ b/resources/views/back/seo_data/edit.blade.php @@ -0,0 +1,79 @@ +@extends('layouts.backend') + +@section('content') +
+ @method('PUT') + @csrf +
+

+ < {{ __('Paramètres SEO')."-".$SeoDatum->page->label}} {{ __('Edition') }}

+
+
+
+
+ + + @include('back.modules.input-error', ['inputName'=>'title']) +
+
+ + + @include('back.modules.input-error', ['inputName'=>'description']) +
+
+ + + @include('back.modules.input-error', ['inputName'=>'keywords']) +
+
+@endsection + +@push('scripts') + +@endpush diff --git a/resources/views/front/a-propos.blade.php b/resources/views/front/a-propos.blade.php index a9452a7..063afa4 100644 --- a/resources/views/front/a-propos.blade.php +++ b/resources/views/front/a-propos.blade.php @@ -1,6 +1,7 @@ @extends('layouts.frontend') -@section('title', __('Accueil')) -@section('description', __("Découvrez DOUX, des produits de volailles françaises.")) +@section('title', $seoDatum->title) +@section('description', $seoDatum->description) +@section('keywords', $seoDatum->keywords) @section('content') @@ -126,40 +127,6 @@ @endif @endif @endforeach -{{-- -
- - 1920 -
-

Lorem Ipsum dolor sit amet.

-

Lorem ip sum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostr

- photo -
- -
- -
- - photo - 2021 -
-

Lorem Ipsum dolor sit amet.

-

Lorem ip sum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostr

-
- -
- -
- - photo - 2020 -
-

Lorem Ipsum dolor sit amet.

-

Lorem ip sum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostr

-
- -
- --}}
diff --git a/resources/views/front/food-service.blade.php b/resources/views/front/food-service.blade.php index 21ccda4..e0a4d43 100644 --- a/resources/views/front/food-service.blade.php +++ b/resources/views/front/food-service.blade.php @@ -1,6 +1,7 @@ @extends('layouts.frontend') -@section('title', __('Food service')) -@section('description', __("Découvrez DOUX, des produits de volailles françaises.")) +@section('title', $seoDatum->title) +@section('description', $seoDatum->description) +@section('keywords', $seoDatum->keywords) @section('content') @@ -43,7 +44,7 @@
{!! $encart_food->text !!}
- {{ __('En savoir plus') }} + {{--{{ __('En savoir plus') }}--}} diff --git a/resources/views/front/gammes/index.blade.php b/resources/views/front/gammes/index.blade.php index 4aa7408..95805fe 100644 --- a/resources/views/front/gammes/index.blade.php +++ b/resources/views/front/gammes/index.blade.php @@ -1,6 +1,7 @@ @extends('layouts.frontend') -@section('title', __('Accueil')) -@section('description', __("Découvrez DOUX, des produits de volailles françaises.")) +@section('title', $seoDatum->title) +@section('description', $seoDatum->description) +@section('keywords', $seoDatum->keywords) @section('content') diff --git a/resources/views/front/gammes/show.blade.php b/resources/views/front/gammes/show.blade.php index 91bdec6..38fe70f 100644 --- a/resources/views/front/gammes/show.blade.php +++ b/resources/views/front/gammes/show.blade.php @@ -1,6 +1,7 @@ @extends('layouts.frontend') -@section('title', __('Accueil')) -@section('description', __("Découvrez DOUX, des produits de volailles françaises.")) +@section('title', $seoDatum->title) +@section('description', $seoDatum->description) +@section('keywords', $seoDatum->keywords) @section('content') diff --git a/resources/views/front/home.blade.php b/resources/views/front/home.blade.php index 6635e3e..d8de938 100644 --- a/resources/views/front/home.blade.php +++ b/resources/views/front/home.blade.php @@ -1,6 +1,7 @@ @extends('layouts.frontend') -@section('title', __('Accueil')) -@section('description', __("Découvrez DOUX, des produits de volailles françaises.")) +@section('title', $seoDatum->title) +@section('description', $seoDatum->description) +@section('keywords', $seoDatum->keywords) @section('content')
diff --git a/resources/views/front/legals.blade.php b/resources/views/front/legals.blade.php index d5cf0f3..87cf87f 100644 --- a/resources/views/front/legals.blade.php +++ b/resources/views/front/legals.blade.php @@ -1,6 +1,7 @@ @extends('layouts.frontend') -@section('title', $mentions_legales->title) -@section('description', __("Découvrez DOUX, des produits de volailles françaises.")) +@section('title', $seoDatum->title) +@section('description', $seoDatum->description) +@section('keywords', $seoDatum->keywords) @section('content') diff --git a/resources/views/front/news.blade.php b/resources/views/front/news.blade.php index ac591b7..6951be2 100644 --- a/resources/views/front/news.blade.php +++ b/resources/views/front/news.blade.php @@ -1,6 +1,7 @@ @extends('layouts.frontend') -@section('title', __('Accueil')) -@section('description', __("Découvrez DOUX, des produits de volailles françaises.")) +@section('title', $seoDatum->title) +@section('description', $seoDatum->description) +@section('keywords', $seoDatum->keywords) @section('content') @@ -104,9 +105,9 @@

{{ __('Nous travaillons toujours pour améliorer nos recettes et proposer des produits de meilleure qualité')}}

- @if (isset($products_home)) + @if (isset($products_news))
- @foreach ($products_home as $product) + @foreach ($products_news as $product)
diff --git a/resources/views/front/policy.blade.php b/resources/views/front/policy.blade.php index f2aabd0..d75fc8d 100644 --- a/resources/views/front/policy.blade.php +++ b/resources/views/front/policy.blade.php @@ -1,6 +1,7 @@ @extends('layouts.frontend') -@section('title', $privacy_policy->title) -@section('description', __("Découvrez DOUX, des produits de volailles françaises.")) +@section('title', $seoDatum->title) +@section('description', $seoDatum->description) +@section('keywords', $seoDatum->keywords) @section('content') diff --git a/resources/views/front/product.blade.php b/resources/views/front/product.blade.php index 482877e..ed2306a 100644 --- a/resources/views/front/product.blade.php +++ b/resources/views/front/product.blade.php @@ -1,6 +1,7 @@ @extends('layouts.frontend') -@section('title', __('Accueil')) -@section('description', __("Découvrez DOUX, des produits de volailles françaises.")) +@section('title', $seoDatum->title) +@section('description', strip_tags($seoDatum->description)) +@section('keywords', $seoDatum->keywords) @section('content') diff --git a/resources/views/layouts/backend/sidenav.blade.php b/resources/views/layouts/backend/sidenav.blade.php index 0015ff9..e3c9c82 100644 --- a/resources/views/layouts/backend/sidenav.blade.php +++ b/resources/views/layouts/backend/sidenav.blade.php @@ -11,15 +11,19 @@
- -
-
{{ __('ENCART DE PRESENTATION') }}
- {{ __('Contenu') }} -
+
+
{{ __('SEO') }}
+ {{ __('Data') }} +
+
+
{{ __('SLIDER') }}
+ {{ __('Slider') }} + {{ __('Slide') }} +
+
+
{{ __('ENCART DE PRESENTATION') }}
+ {{ __('Contenu') }} +
@@ -32,6 +36,10 @@
+
+
{{ __('SEO') }}
+ {{ __('Data') }} +
{{ __('ENCART DE PRESENTATION') }}
{{ __('Contenu') }} @@ -68,7 +76,12 @@
+
+
{{ __('SEO') }}
+ {{ __('Data') }} +
@@ -100,6 +113,10 @@
+
+
{{ __('SEO') }}
+ {{ __('Data') }} +
{{ __('BLOC DES CONSEILS') }}
{{ __('Contenu') }} @@ -123,6 +140,10 @@
+
+
{{ __('SEO') }}
+ {{ __('Data') }} +
{{ __('ENCART DE PRESENTATION') }}
{{ __('Contenu') }} diff --git a/resources/views/layouts/frontend/app-head.blade.php b/resources/views/layouts/frontend/app-head.blade.php index fc60dfd..69f14cc 100644 --- a/resources/views/layouts/frontend/app-head.blade.php +++ b/resources/views/layouts/frontend/app-head.blade.php @@ -7,6 +7,7 @@ {{ config('app.name') }}@hasSection('title') - @yield('title')@endif + @hasSection('canonical') @@ -19,4 +20,4 @@ @else -@endif \ No newline at end of file +@endif diff --git a/routes/web.php b/routes/web.php index d2e3de6..6b801c8 100644 --- a/routes/web.php +++ b/routes/web.php @@ -20,14 +20,20 @@ use App\Http\Controllers\Bo\PictoBrandsController; use App\Http\Controllers\Bo\PictosController; use App\Http\Controllers\Bo\PostsController; use App\Http\Controllers\Bo\ProductsController; +use App\Http\Controllers\Bo\SeoDataController; use App\Http\Controllers\Bo\SlidersController; use App\Http\Controllers\Bo\SlidesController; use App\Http\Controllers\Bo\TextsController; use App\Http\Controllers\Bo\TitlesController; use App\Http\Controllers\HomeController as ControllersHomeController; +use App\Http\Controllers\MarqueController as ControllersMarqueController; use App\Http\Controllers\GammesController as ControllersGammesController; +use App\Http\Controllers\NewsController as ControllersNewsController; use App\Http\Controllers\ProductsController as ControllersProductsController; use App\Http\Controllers\ContactController as ControllersContactController; +use App\Http\Controllers\FoodServiceController as ControllersFoodServiceController; +use App\Http\Controllers\LegalsController as ControllersLegalsController; +use App\Http\Controllers\PolicyController as ControllersPolicyController; use Illuminate\Support\Facades\Route; use Illuminate\Support\Facades\Auth; @@ -78,6 +84,8 @@ Route::prefix('bo') 'slides' => SlidesController::class, ] ); + Route::resource('seo_data', SeoDataController::class) + ->except(['index', 'create', 'store', 'destroy', 'show']); Route::resource('moments', MomentsController::class) ->except(['create', 'store', 'destroy', 'show']); Route::resource('encarts', EncartsController::class) @@ -115,18 +123,18 @@ foreach ($langs as $lang) { ->group( function () { Route::get('/', [ControllersHomeController::class, 'index'])->name('home'); - Route::view('/notre-marque', 'front.a-propos')->name('wasup'); + Route::get('/notre-marque', [ControllersMarqueController::class, 'index'])->name('wasup'); Route::get('/nos-gammes', [ControllersGammesController::class, 'index'])->name('gammes.index'); Route::get('/gamme/{gammeSlug}', [ControllersGammesController::class, 'show'])->name('gammes.show'); Route::get( '/produit/{gammeSlug}/{productSlug}', [ControllersProductsController::class, 'show'] )->name('product.show'); - Route::view('/nos-actualites', 'front.news')->name('news'); - Route::view('/food-service', 'front.food-service')->name('food'); - Route::view('/mentions-legales', 'front.legals')->name('cgu'); - Route::view('/charte-confidentialite', 'front.policy')->name('policy'); - Route::view('/plan-site', 'front.site-map')->name('site-map'); + Route::get('/nos-actualites', [ControllersNewsController::class, 'index'])->name('news'); + Route::get('/food-service', [ControllersFoodServiceController::class, 'index'])->name('food'); + Route::get('/mentions-legales', [ControllersLegalsController::class, 'index'])->name('cgu'); + Route::get('/charte-confidentialite', [ControllersPolicyController::class, 'index'])->name('policy'); + //Route::view('/plan-site', 'front.site-map')->name('site-map'); Route::get('/recherche', [ControllersProductsController::class, 'search'])->name('search'); //Classic Route::get('/contact', [ControllersContactController::class, 'contact'])->name('contact');