Maison >développement back-end >tutoriel php >Comment créer des Slugs d'URL optimisés pour le référencement à partir de chaînes Unicode en PHP ?

Comment créer des Slugs d'URL optimisés pour le référencement à partir de chaînes Unicode en PHP ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-12 15:39:12671parcourir

How to Create SEO-Friendly URL Slugs from Unicode Strings in PHP?

Générer des slugs adaptés aux URL à partir de chaînes Unicode en PHP

La création de slugs à partir de chaînes Unicode est cruciale pour générer des URL optimisées pour le référencement. En PHP, une fonction de slugification peut être implémentée pour convertir des chaînes comme « Andrés Cortez » en « andres-cortez ».

Pour y parvenir, envisagez d'utiliser une approche plus efficace que les remplacements répétitifs. La fonction suivante fournit une solution :

public static function slugify($text, string $divider = '-')
{
  // Replace non-letter or digits with the specified divider
  $text = preg_replace('~[^\pL\d]+~u', $divider, $text);

  // Transliterate to US-ASCII
  $text = iconv('utf-8', 'us-ascii//TRANSLIT', $text);

  // Remove unwanted characters
  $text = preg_replace('~[^-\w]+~', '', $text);

  // Trim and remove duplicate dividers
  $text = trim($text, $divider);
  $text = preg_replace('~-+~', $divider, $text);

  // Convert to lowercase
  $text = strtolower($text);

  // Default to 'n-a' if the slug is empty
  if (empty($text)) {
    return 'n-a';
  }

  return $text;
}

Cette fonction suit une approche structurée :

  • Les caractères autres que des lettres ou des chiffres sont remplacés par le séparateur spécifié.
  • Les caractères Unicode sont translittérés en US-ASCII pour des raisons de compatibilité.
  • Les caractères indésirables sont supprimés, tels que les espaces et les caractères spéciaux. caractères.
  • Les séparateurs de début et de fin sont coupés et les séparateurs en double sont éliminés.
  • Le slug est converti en minuscules.
  • Un slug vide est par défaut « n-a » pour éviter URL vides.

En utilisant cette fonction de slugification efficace, vous pouvez générer sans effort Slugs adaptés aux URL à partir de chaînes Unicode dans vos applications PHP.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn