Écrire une réponse

Veuillez écrire votre message et l'envoyer

Cliquez dans la zone sombre de l'image pour envoyer votre message.

Retour

Résumé de la discussion (messages les plus récents en premier)

Gotcha
2026-01-09 10:50:19

C'est ça.

polowigo
2026-01-09 07:44:34

Entendu, merci.
Et si je ne mets pas ce code, ce sont les clés qui seront affichées, pas l'en-UK ?
Et quelque soit l'extension, thème ou plugin ?

Gotcha
2026-01-08 19:33:44

polowigo a écrit:

plg a écrit:

Là tu ne gères que l'absence "totale" d'une langue. Si tu as un fichier de langue avec seulement 32% des clefs traduites, ça ne fonctionnera pas.

Je ne suis pas sûr d'avoir compris : si j'applique le code de ton #8, que je traduis toutes les clés vers en_UK et seulement une partie des clés en Vietnamien ou autre, ces quelques clé s'afficheront bien dans la langue cible et les clés non traduites s'afficheront en anglais ?

Oui.

Tu appliques par défaut en_UK et tu surcharges avec ce qu'il y a de disponible. Si la clé est non traduite, ca reste à en_UK.

polowigo
2026-01-08 18:35:50

plg a écrit:

Là tu ne gères que l'absence "totale" d'une langue. Si tu as un fichier de langue avec seulement 32% des clefs traduites, ça ne fonctionnera pas.

Je ne suis pas sûr d'avoir compris : si j'applique le code de ton #8, que je traduis toutes les clés vers en_UK et seulement une partie des clés en Vietnamien ou autre, ces quelques clé s'afficheront bien dans la langue cible et les clés non traduites s'afficheront en anglais ?

Charles69
2026-01-08 15:31:08

Je viens de tester sur 3 plugins où j'ai des fichiers de langue en français et en anglais.

J'ai supprimé les divers load_langage qui se promenaient dans le code , et juste après les define j'ai mis ce code une fois

Code:

//======= CHARGEMENT DES LANGUES , UK PAR DEFAUT ==================
// Charger d'abord l'anglais comme base
load_language('plugin.lang', TBS_PATH, array('language' => 'en_UK', 'no_fallback' => true));
// Puis charger la langue de l'utilisateur (qui écrasera l'anglais si la langue existe)
load_language('plugin.lang', TBS_PATH);

Quand je me connecte en français c'est bien le français qui apparait, et quand je me connecte en allemand par exemple c'est bien l'anglais qui apparait.

Ensuite il suffira d'ajouter les fichiers de langue complémentaires.

Merci @plg pour la solution.

Gotcha
2026-01-08 10:08:50

J'avais pris connaissance en effet de ta (la) bonne solution après coup.

Merci, je vais corriger.

plg
2026-01-08 09:17:17

Gotcha a écrit:

Je viens de l'implémenter.

[Github] centralAdmin commit 6e583fea

Là tu ne gères que l'absence "totale" d'une langue. Si tu as un fichier de langue avec seulement 32% des clefs traduites, ça ne fonctionnera pas. Faut pas se prendre la tête, tu charges systématiquement en_UK et ensuite tu charges la langue du user. Ca ne ccoûte rien du tout de faire ça.

Gotcha
2026-01-07 22:38:34

Je viens de l'implémenter.

[Github] centralAdmin commit 6e583fea

plg
2026-01-07 21:48:04

polowigo a écrit:

plg a écrit:

Il existe cependant de rares cas où Piwigo (ou un plugin) charge en_UK puis une autre langue. Dans ce cas là, c'est bien la valeur de en_UK qui sera utilisée, car non surchargée par l'autre langue (si la clef n'est pas traduite dans l'autre langue)

Aurais-tu un exemple ? Dans quel cadre est-ce nécessaire ? Et comment peut-on l'implémenter dans un plugin ?

Oui : [Github] piwigodotorg file main.inc.php@L83

Cela sert si les clefs de langue ne sont pas identiques aux valeurs dans en_UK

polowigo
2026-01-07 19:24:27

plg a écrit:

Il existe cependant de rares cas où Piwigo (ou un plugin) charge en_UK puis une autre langue. Dans ce cas là, c'est bien la valeur de en_UK qui sera utilisée, car non surchargée par l'autre langue (si la clef n'est pas traduite dans l'autre langue)

Aurais-tu un exemple ? Dans quel cadre est-ce nécessaire ? Et comment peut-on l'implémenter dans un plugin ?

plg
2026-01-07 19:07:17

Il existe cependant de rares cas où Piwigo (ou un plugin) charge en_UK puis une autre langue. Dans ce cas là, c'est bien la valeur de en_UK qui sera utilisée, car non surchargée par l'autre langue (si la clef n'est pas traduite dans l'autre langue)

plg
2026-01-07 19:06:08

Gotcha a écrit:

Normalement, si la langue est absente c'est la langue par défaut (en_UK) qui est choisie.

non, on affiche la clef de langue. Comme dans 99.999% des cas, la clef de langue est identique à la chaîne traduite dans en_UK, tu as l'impression que c'est en_UK.

{'My taylor is rich'|translate} => en fr_FR, ça donne 'My taylor is rich' si cette chaîne n'est pas traduite.

polowigo
2026-01-07 18:50:32

@Charles69 : en principe, nombre de plugins sont codés en anglais et les fichiers de langue permettent l'internationalisation, même en français.
Par exemple dans un template tu peux trouver {'File'|@translate} et dans ton fichier fr_FR tu auras une ligne $lang['File'] = 'Fichier';

Charles69
2026-01-07 18:45:34

Gotcha a écrit:

Normalement, si la langue est absente c'est la langue par défaut (en_UK) qui est choisie.

C'est ce que je croyais mais ce n'est pas la cas.

C'est le texte de base qui est choisi par défaut , si tu as :

fr_FR avec des items FR -> FR
en_UK avec des items FR -> UK
                                                    ce sera FR

fr_FR avec des items UK -> FR
en_UK avec des items UK -> UK
                                                    ce sera UK

Ce serait bien que ce soit en_UK par défaut , dans une prochaine version de piwigo ?

Gotcha
2026-01-07 18:12:41

Normalement, si la langue est absente c'est la langue par défaut (en_UK) qui est choisie.

Pied de page des forums

Propulsé par FluxBB

github linkedin newsletter Piwigo.org © 2002-2026 · Contact