Maison >développement back-end >tutoriel php >Comment mettre en place un magazine multicangue en ligne avec Sulu

Comment mettre en place un magazine multicangue en ligne avec Sulu

William Shakespeare
William Shakespeareoriginal
2025-02-09 11:35:17947parcourir

Sulu CMS: Construire un magazine en ligne multilingue

Ce tutoriel s'appuie sur une installation précédente "Hello World" Sulu (en utilisant Vagrant), plongeant dans les concepts de base et créant un magazine en ligne simple et multilingue. Avant de procéder, la familiarité avec la mise en place des environnements de développement de PHP isolés et la configuration initiale de SULU VAGRANT est recommandée.

How to Set up an Online Multi-Language Magazine with Sulu

Concepts clés:

  • Prise en charge multi-langues: Sulu excelle dans la gestion du contenu dans plusieurs lieux (langues) à l'aide de modèles de page personnalisables.
  • Modèles de page: Ceux-ci sont définis par des modèles de brindilles (pour le rendu) et la configuration XML (pour la structure).
  • Cache: La livraison efficace de contenu est cruciale. Les environnements de développement devraient utiliser les variables d'environnement de développement de Symfony (SYMFONY_ENV et SYMFONY_DEBUG) pour un débogage facile et une compensation immédiate du cache (bin/adminconsole cache:clear --env=prod).
  • ArticleBundle: Essential pour gérer les volumes de grands articles, en tirant parti de la recherche Elastics pour la fonctionnalité de recherche. (Remarque: ce bundle est en cours de développement actif.)
  • elasticsearch: requis par l'articlebundle. L'installation sur Ubuntu 16.04 implique l'installation de Java 8 et la configuration d'Elasticsearch.
  • Configuration multi-local: L'ajout de langages implique de modifier le fichier d'espace Web et d'exécuter php bin/adminconsole sulu:document:initialize pour initialiser les documents PHPCR pour chaque nouveau lieu. Ne pas le faire peut entraîner une perte de données; Les commandes de récupération sont fournies dans l'article original.
  • Pages d'ombre: Celles-ci fournissent du contenu de secours dans une langue secondaire lorsqu'une traduction est manquante.

pages et modèles de page:

Une page est un bloc de contenu, souvent composé de blocs plus petits. Un modèle de page utilise des brindilles pour le rendu et XML pour la définition structurelle. L'exemple d'extraits XML et Twig illustre cela. La modification des modifications de disposition et de publication master.html.twig démontre le workflow.

How to Set up an Online Multi-Language Magazine with Sulu

Thèmes:

Un thème est une collection de modèles et d'actifs de page (CSS, JS, etc.), distinct de la disposition maître. Ce tutoriel se concentre sur les modèles de page, pas les thèmes.

Considérations de mise en cache:

Assurez-vous que vos variables d'environnement sont correctement définies pour un développement et un débogage efficaces. N'oubliez pas d'effacer le cache de manière appropriée pour chaque environnement.

Construire le magazine en ligne:

Un magazine en ligne nécessite: des pages d'information, de nombreux articles (souvent classés), des rôles utilisateur et une bibliothèque de médias. L'articlebundle relève le défi de gérer un grand nombre d'articles par le contenu Sharding (pour éviter la limite de 10 000 enfants de PHPCR).

Installation d'Elasticsearch:

Des instructions détaillées sont fournies pour installer Java 8 et Elasticsearch sur Ubuntu 16.04. Les étapes de dépannage sont incluses pour résoudre les problèmes de démarrage.

Installation et configuration d'article:

Le tutoriel fournit des étapes détaillées pour installer l'articlebundle (à l'aide du compositeur), la configurer dans AbstractKernel.php et config.yml, en ajoutant des itinéraires, en créant des exemples de modèles et en initialisant le bundle. Les autorisations doivent être ajustées dans l'interface utilisateur d'administration pour accéder à la fonctionnalité de l'article.

How to Set up an Online Multi-Language Magazine with Sulu

schémas URL:

Modifier le route_schema dans config.yml permet la personnalisation des URL de l'article.

Ajout de lieux:

L'ajout d'une nouvelle langue (par exemple, Croate - "HR") au fichier d'espace Web nécessite une exécution ultérieure de php bin/adminconsole sulu:document:initialize. Surtout, cette commande doit être exécutée avant de créer du contenu dans le nouveau lieu pour éviter la perte de données.

How to Set up an Online Multi-Language Magazine with Sulu

Switcher de langue:

L'ajout d'un commutateur de langue à la disposition master.html.twig permet aux utilisateurs de basculer facilement entre les langues.

Pages d'ombre:

Les pages d'ombre permettent le contenu de secours à partir d'une langue par défaut (par exemple, l'anglais) lorsqu'une traduction est manquante pour une page spécifique.

How to Set up an Online Multi-Language Magazine with Sulu

Conclusion:

Ce tutoriel fournit un guide complet pour construire un magazine en ligne multilingue utilisant SULU CMS, couvrant les concepts clés, l'intégration du faisceau et la gestion des paramètres régionaux. N'oubliez pas l'importance de la mise en cache appropriée, de la configuration Elasticsearch et de la commande critique sulu:document:initialize pour la gestion des paramètres régionaux. Le tutoriel se termine par une section FAQ abordant les questions courantes sur Sulu et ses caractéristiques. Les images incluses dans le texte d'origine sont conservées dans leur format et leur emplacement d'origine.

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