Laravel fournit un système de routage robuste qui peut être exploité pour créer des URL conviviales en référencement. Voici comment vous pouvez y parvenir:
Utilisez des segments URL descriptifs : Au lieu d'utiliser des ID génériques ou numériques dans vos URL, utilisez des mots clés descriptifs. Par exemple, plutôt que /product/123
, utilisez /product/awesome-widget
. Dans Laravel, vous pouvez y parvenir en utilisant des paramètres de route avec des noms expressifs:
<code class="php">Route::get('/product/{product}', 'ProductController@show')->name('product.show');</code>
Dans votre méthode ProductController@show
, vous pouvez ensuite utiliser le champ slug
au lieu de id
pour correspondre à l'itinéraire:
<code class="php">public function show(Product $product) { return view('product.show', ['product' => $product]); }</code>
Évitez les segments dynamiques lorsque cela est inutile : essayez de garder les URL aussi statiques que possible. Par exemple, au lieu de /category/{category}/product/{product}
, considérez /category-{category}/product/{product}
s'il s'agit d'une structure fixe. Cela peut être configuré comme:
<code class="php">Route::get('/category-{category}/product/{product}', 'ProductController@show')->name('product.show');</code>
Implémentez la pagination : si votre page contient une liste d'éléments, utilisez une pagination et incluez le numéro de page dans l'URL, comme /products?page=2
. Le système de pagination de Laravel peut gérer automatiquement ceci:
<code class="php">$products = Product::paginate(15); return view('products.index', ['products' => $products]);</code>
Utilisez la dénomination de l'itinéraire : nommez vos itinéraires pour les rendre plus gérables et plus faciles à référencer dans vos vues ou vos redirectes. Cela aide également à la génération d'URL:
<code class="php">Route::get('/about', 'AboutController@index')->name('about');</code>
Vous pouvez ensuite générer des URL en utilisant le nom de l'itinéraire:
<code class="php">route('about'); // Generates '/about'</code>
En mettant en œuvre ces stratégies, vous pouvez créer des URL plus descriptives, plus faciles à indexer pour les moteurs de recherche et plus conviviales.
Pour structurer les itinéraires Laravel pour améliorer le référencement, suivez ces meilleures pratiques:
/blog/post-title
au lieu de /blog/category/subcategory/post-title
./blog/post-title
est meilleur que /blog/posttitle
./category/subcategory/product
, utilisez /product/category/subcategory
. Utilisez HTTPS : assurez-vous que tous vos itinéraires utilisent HTTPS. Il s'agit d'un facteur de classement et assure la sécurité de votre site. Laravel le rend facile à configurer dans votre fichier .env
:
<code class="plaintext">APP_URL=https://yourdomain.com</code>
La mise en œuvre des URL canoniques dans Laravel aide à prévenir les problèmes de contenu en double, ce qui peut améliorer votre référencement. Voici comment vous pouvez le faire:
Ajoutez des balises canoniques dans vos vues : vous pouvez ajouter une balise canonique à la section de votre HTML. Dans Laravel, vous pouvez le faire dans votre modèle de lame:
<code class="php"> @if(isset($canonical)) <link rel="canonical" href="%7B%7B%20%24canonical%20%7D%7D"> @endif </code>
Ensuite, dans votre contrôleur, vous pouvez définir l'URL canonique:
<code class="php">public function show(Product $product) { $canonical = route('product.show', $product); return view('product.show', compact('product', 'canonical')); }</code>
Gestion du contenu paginé : pour le contenu paginé, vous devez définir l'URL canonique sur la première page du contenu. Dans la pagination de Laravel, vous pouvez le régler dans votre contrôleur:
<code class="php">public function index() { $products = Product::paginate(15); $canonical = route('products.index'); return view('products.index', compact('products', 'canonical')); }</code>
Automatiser les URL canoniques avec middleware : pour une approche plus automatisée, vous pouvez utiliser le middleware pour définir des URL canoniques. Créez un middleware qui ajoute la balise canonique à la réponse:
<code class="php">namespace App\Http\Middleware; use Closure; use Illuminate\Http\Request; class AddCanonicalUrl { public function handle(Request $request, Closure $next) { $response = $next($request); if ($request->route()) { $canonical = route($request->route()->getName(), $request->route()->parameters()); $response->headers->set('Link', '; rel="canonical"', false); } return $response; } }</code>
Ensuite, enregistrez le middleware dans app/Http/Kernel.php
:
<code class="php">protected $middleware = [ // ... \App\Http\Middleware\AddCanonicalUrl::class, ];</code>
Ce middleware ajoutera une balise canonique à toutes les itinéraires qui ont une route nommée.
Plusieurs outils et packages peuvent vous aider à analyser et à optimiser le référencement URL dans une application Laravel:
Laravel SEO : Le package laravel-seo
propose des outils de référencement faciles à utiliser, y compris des balises Meta, des balises graphiques ouvertes et des cartes Twitter. Vous pouvez l'installer via le compositeur:
<code class="bash">composer require artesaos/seotools</code>
Ce package aide à gérer les balises SEO directement à partir de vos contrôleurs, ce qui facilite la configuration des URL canoniques et d'autres éléments de référencement.
Laravel Analytics : Ce package ( spatie/laravel-analytics
) vous permet de récupérer facilement les données de Google Analytics. Vous pouvez l'utiliser pour surveiller le trafic et l'engagement des utilisateurs, qui sont cruciaux pour l'optimisation du référencement.
<code class="bash">composer require spatie/laravel-analytics</code>
Après avoir configuré le package, vous pouvez récupérer les données d'analyse dans votre application Laravel pour comprendre comment les utilisateurs interagissent avec vos URL.
Laravel Sitemap : Le package spatie/laravel-sitemap
aide à générer et à gérer des planches, qui sont essentielles pour le référencement. L'installez via le compositeur:
<code class="bash">composer require spatie/laravel-sitemap</code>
Vous pouvez ensuite générer un plan du site qui aide les moteurs de recherche indexer vos URL plus efficacement.
En utilisant ces outils et packages, vous pouvez améliorer considérablement le référencement de votre application Laravel, en vous assurant que vos URL sont optimisées pour les moteurs de recherche et l'expérience utilisateur.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!