web-dev-qa-db-fra.com

Comment ajouter un pack de langue (ou des substitutions de chaînes spécifiques à une langue) à un modèle?

Je suis donc en train d’ajouter une deuxième langue de contenu à mon site joomla et je rencontre un problème. J'ai ajouté avec succès ma langue seconde (allemand), reconstruit mon site avec le contenu en langue seconde et implémenté avec plaisir le sélecteur de langue. Le problème que j'ai est que toutes les chaînes qui devraient avoir des traductions ne sont pas traduites.

contact page screenshot

Dans l'image, vous remarquerez que les composants de formulaire et le texte sont correctement traduits, mais les chaînes pour "Adresse", "Téléphones" et "Informations diverses" ne sont pas traduites.

Le site est mis à jour vers Joomla 3.6 et j'utilise le composant de contact principal.

J'ai vérifié le pack de langue allemande et je peux confirmer qu'il existe des traductions correctes pour chaque chaîne que je souhaite traduire, mais ces traductions ne sont pas appliquées de manière uniforme sur la page de contact.

Je ne peux pas appliquer de dérogation de langue pour ces chaînes, car les traductions existent déjà. Si je ciblais les chaînes en anglais, les traductions de l'ensemble du site seraient correctes.

J'utilise le thème 1498 de Template Monster et il n'y a qu'un seul pack de langue (anglais GB) dans le dossier des langues de modèle. J'ai identifié que je souhaitais modifier les valeurs de chaîne pour TPL_CONTACT_ADDRESS, TPL_CONTACT_PHONES, et TPL_CONTACT_MISC dans le [template]/html/com_contact/contact/default_address.php fichier.

Ces chaînes sont toutes incluses dans le pack de langue à l'intérieur du modèle. D'une réponse très utile à une question précédente, les chaînes doivent être remplacées par le modèle, car des traductions correctes existent dans le pack de langue installé.

Ma question est donc de savoir comment supprimer les chaînes anglaises codées en dur afin que les traductions normales fonctionnent, ou comment appliquer mes propres traductions correctes pour ces chaînes lorsque la langue correcte est chargée. J'ai trouvé un ou deux tutoriels sur la façon de procéder, mais ils semblent quelque peu contradictoires ou appliqués à des cas d'utilisation plus spécifiques.

3
nizz0k

Il y a plusieurs façons de gérer cela.

1. Créez un fichier ini en allemand pour votre modèle.

une. Aller au dossier des langues -> EN-GB

b. Repérez le fichier de langue EN-GB De votre modèle: par exemple. en-GB.tpl_theme1498.ini

c. Copiez-le dans le dossier de langue de-DE.

ré. Renommez-le en de-DE.tpl_theme1498.ini (ou quel que soit le nom nommé theme1498).

e. Modifiez-le et remplacez les traductions anglaises par celles que vous souhaitez.
Par exemple:
- TPL_CONTACT_MISC="Miscellaneous Info" Devient:
- TPL_CONTACT_MISC="Your german misc info translation"


2. Créez des remplacements de langue pour les chaînes de langue traduisibles de votre modèle.

une. Dans le backend - allez à Extensions-> Langues-> Dérogations

b. Utilisez le filtre sur la gauche pour filtrer les remplacements ALLEMAND DE.

c. Faites en sorte que le modèle de contacts remplace le fichier et recherchez les constantes de langue. Copiez-les, puis cliquez sur le bouton Nouveau de la page Remplacements pour créer un nouveau remplacement.

ré. Collez la constante de langue et tapez la traduction de votre choix dans les champs correspondants. Sauver.

Create new language override


3. Remplacez le remplacement: Ajoutez vos propres chaînes de langage - ou celles du com_contact.

Je parie que ce modèle n'aura pratiquement aucune mise à jour. Personnellement, je pourrais même choisir cette option consistant à remplacer les chaînes de langage du modèle par celles du modèle com_contact par défaut.

3
FFrewin

Donc, dans mon cas, c’est que les chaînes ont été codées en dur dans le modèle grâce à l’inclusion d’un seul pack de langue dans le dossier Langue du modèle pour l’anglais. Ce que j'ai fait est de créer mon propre fichier de langue en copiant et en renommant le dossier et les fichiers (par exemple de en-GB -> de-DE) et en mettant à jour les valeurs des chaînes que je voulais. Le facteur critique consistait à mettre à jour le fichier templateDetails.xml à la racine du dossier de modèles afin d'inclure des pointeurs sur le nouveau dossier de langue et les fichiers de la balise de langue. Là encore, j'ai copié les lignes de code et les ai mises à jour pour qu'elles pointent vers les fichiers et les dossiers appropriés. Ce tutoriel a été utile à titre de référence, mais s’applique à un cas d’utilisation différent pour que les instructions ne correspondent pas directement. J'ai finalement été mis au courant grâce à des réponses à une de mes questions précédentes ainsi qu'à la réponse et à la réponse à cette question ici

2
nizz0k