Page 1 sur 4
Traduction avec le widget microsoft
Posté : 09 févr. 2016, 17:51
par sigebert
Bonjour à tous
Je me présente, je ne suis pas un kador en PHP, mais à 76 ans j'essaye encore de me tenir au courant cela m'évite de vieillir et ça fait marcher les neurones ceci m'a permis de mettre un site sur le Web en 1996
www.histoirdefrance.fr
Ce site est construit en frames, mais avec un menu en PHP, mon problème est celui ci
je voudrais ajouter le widget de microsoft pour que les utilisateurs encore nombreux puissent traduire
directement mes pages. J'ai mis le widget sur ma page centrale ça fonctionne mais quand j'ouvre un répertoire de mon menu PHP pour afficher une rubrique......... le widget disparaît.... c'est normal
(je ne peux pas me résoudre à ajouter ce script sur toutes mes pages plus de trois mille)
Merci pour votre aide
Cordialement
Re: Traduction avec le widget microsoft
Posté : 10 févr. 2016, 20:59
par @rthur
Bonjour et bienvenue sur PHPfrance,
Malheureusement, l'outil de traduction de Microsoft ne peut pas traduire les sites avec des frames, sauf à intégrer leur widget directement dans chaque page HTML.
Vu que tu as 3000 pages HTML, effectivement il n'est pas envisageable de le faire à la main, en revanche, il doit être possible de faire un script PHP qui va traiter toutes tes pages HTML pour intégrer le code du widget par exemple juste avant la balise </body> qui est normalement présente dans toutes tes pages HTML.
Ou sinon une autre approche, peut être d'intégrer l'outil de Google qui lui traduit dans les frames :
https://translate.google.com/translate? ... edit-text=
En revanche, j'ai l'impression qu'il bloque le fonctionnement de ton menu, mais il doit être possible de corriger cela.
Re: Traduction avec le widget microsoft
Posté : 10 févr. 2016, 21:59
par sigebert
Bonsoir Arthur
D'abord merci pour m'avoir répondu. Je tiens à ce site c’était mon épouse qui l'avait écrit, et je m'étais contenté de le mettre sur le net. J'ai commencé à mettre le script de google, sur chaque page, ça fonctionne mais c'est long (3000 pages)
En ce qui concerne le script PHP pas question d'y penser, comme je le dis dans mon précédent message je suis nul en PHP
Mon menu déroulant est un menu trouvé sur le net "treemenu11"
Je pense que le mieux est d'intégrer l'outil google, je peux te dire que j'ai essayé ça fonctionne sur une page, mais je n'ai pas trouvé le moyen de traduire toutes les frames .
En ce concerne le menu de droite c'est un éphéméride écrit en txt et le moteur de recherche interne de google si il n'y a que cela qui gêne je le supprimerais.
Encore merci
Cordialement
Re: Traduction avec le widget microsoft
Posté : 10 févr. 2016, 22:10
par sigebert
Bonsoir Arthur
Toutes mes excuses , mais l'éphéméride est un fichier javascript
Cordialement
Re: Traduction avec le widget microsoft
Posté : 11 févr. 2016, 02:16
par @rthur
Mon idée pour la solution de Google n'était pas que tu l'insère sur chaque page mais simplement via un bouton sur ton iframe du menu ou du haut par exemple et que ça traduise directement toutes tes pages.
Ma remarque concernant le menu (de gauche), c'était car j'ai l'impression que lorsqu'on traduit une page avec Google le menu ne fonctionne plus quand on veut déplier un dossier.
En ce qui concerne le script PHP pas question d'y penser, comme je le dis dans mon précédent message je suis nul en PHP
Si ça t'intéresse d'apprendre à le faire, on peut t'aider

Re: Traduction avec le widget microsoft
Posté : 11 févr. 2016, 09:31
par sigebert
Bonjour Arthur
Je veux bien apprendre à faire ce script PHP, ce sera plus facile car je crois qu'avec Google je vais avoir des problèmes
Merci de me l'avoir proposé, mais je répète je suis nul en PHP
Cordialement
Re: Traduction avec le widget microsoft
Posté : 11 févr. 2016, 15:49
par @rthur
Alors la première étape, c'est d'avoir un serveur PHP en local sur ton ordinateur pour pouvoir tester tes développements.
Par exemple WampServer est un bon point de départ :
http://www.wampserver.com
Ensuite et c'est la règle n°1 en informatique, fait une sauvegarde complète de de ton site, afin de toujours pouvoir revenir à une version + ancienne en cas d'erreur.
Puis l'objectif est de développer un script PHP qui va ouvrir tous tes fichiers *.html un par un et insérer le code que tu veux dedans.
On va faire ça en 3 étapes :
1) Lister tous les fichiers d'un répertoire (et éventuellement de ses sous-répertoires) et afficher leurs noms
2) Ouvrir un fichier et injecter un code dedans
3) Fusionner les 2 scripts des étapes 1 et 2.
Pour le 1) tu auras besoin de la fonction glob() de PHP.
Regarde l'exemple dans la documentation, il fait normalement ce qu'on veut à savoir lister tous les fichiers d'une certaine extension :
http://fr.php.net/glob
Si tes fichiers sont aussi dans des sous-répertoires, alors il faudra rendre cette fonction récursive et un gentil utilisateur a posté le code d'une fonction appelée glob_recursive()
Dis moi quand le 1) fonctionnera et on pourra passer à l'étape 2

Re: Traduction avec le widget microsoft
Posté : 11 févr. 2016, 16:40
par sigebert
Bonjour Arthur
Merci de m'aider pour le PHP en local, mon site est sur une clé USB et fonctionne avec Miniguppy est-ce que ça va ?
Dans mon menu déroulant, il y a un fichier demomenu.txt qui comporte toutes les adresses URL de mon site
Voici un exemple du début de mon menu
.Accueil|about.html|main
.A propos du site|../../divers/introduction.htm|main
.La Chronologie|../../divers/chronologie_des_rois_et_des_presidents.htm|main
.La Préhistoire|../../histoire/la prehistoire_1.htm|main
.La Gaule|../../histoire/vercingetorix.htm|main
.La Gaule romaine|../../histoire/la_gaule_romaine.htm|main
.Les invasions|../../histoire/les_grandes_invasions.htm|main
.Les Huns|../../histoire/invasion_des_huns.htm|main
.Histoire de France|../../accueil/introduction_sur_l'histoire_de_france.htm|main
..Chroniques royales|../../chroniques/chroniques.htm|main
...Les Capétiens|../../chroniques/capetiens/capeti.htm|main
....Louis 6|../../chroniques/capetiens/louis6/louis6.htm|main
....Louis 7|../../chroniques/capetiens/louis7/louis7-1.htm|main
....Philippe II|../../chroniques/capetiens/philippe-auguste/page1.htm|main
....Louis VIII|../../chroniques/capetiens/louis8/page1.htm|main
....Saint Louis|../../chroniques/capetiens/louis9/page1.htm|main
....Philippe III|../../chroniques/capetiens/philippe3/page1.htm|main
....Philippe IV|../../chroniques/capetiens/philippe4/page1.htm|main
....Louis X|../../chroniques/capetiens/louis10/page1.htm |main
....Philippe V|../../chroniques/capetiens/philippe5/page1.htm|main
....Charles IV|../../chroniques/capetiens/charles4/page1.htm|main
J'attends ta réponse avant de commencer
Re: Traduction avec le widget microsoft
Posté : 11 févr. 2016, 17:20
par sigebert
Re: Traduction avec le widget microsoft
Posté : 11 févr. 2016, 19:11
par @rthur
Merci de m'aider pour le PHP en local, mon site est sur une clé USB et fonctionne avec Miniguppy est-ce que ça va ?
Oui, normalement ça ne devrait pas poser de problème.
Mais attention à bien faire une copie de sauvegarde ailleurs
Dans mon menu déroulant, il y a un fichier demomenu.txt qui comporte toutes les adresses URL de mon site
Le but est d'utiliser la fonction glob() en PHP pour refaire en quelque sorte cette même liste.
Donc crée un nouveau fichier par exemple modif_traduction.php et insères-y l'exemple 1 de la fonction glob() de la documentation :
http://fr.php.net/glob
Re: Traduction avec le widget microsoft
Posté : 11 févr. 2016, 19:21
par sigebert
C'est fait le fichier modif_traduction.php est dans le répertoire de mon site
Re: Traduction avec le widget microsoft
Posté : 11 févr. 2016, 20:12
par @rthur
C'est fait le fichier modif_traduction.php est dans le répertoire de mon site
Et est-ce qu'il liste bien tous les fichiers html de ton site ?
Y compris ceux qui sont dans des sous-répertoires ?
Re: Traduction avec le widget microsoft
Posté : 11 févr. 2016, 20:37
par sigebert
Un petit soucis Arthur, où dois-je insérer le fichier sur ma clé guppy, et comment savoir si il liste bien tous mes fichiers
Excuse mon ignorance, mais même la clé USB avec mon site Guppy a été construite par Papinou sur le site miniguppy
je n'ai pas honte à mon âge d'avouer que je me débrouille grâce aux aides internet
Re: Traduction avec le widget microsoft
Posté : 12 févr. 2016, 10:23
par @rthur
Malheureusement je ne sais pas comment fonctionne miniguppy donc je ne pourrai pas trop te guider là dessus.
Sinon la solution est d'installer Wampserver sur ton ordinateur comme indiqué plus haut, ensuite il faudra créer un répertoire dans C:\wamp\www (par exemple histoirdefrance)
Et créer ton fichier modif_traduction.php dans le répertoire C:\wamp\www\histoirdefrance\
Ensuite pour l'exécuter, tu lances un navigateur internet à l'adresse :
http://localhost/histoirdefrance/modif_traduction.php
Re: Traduction avec le widget microsoft
Posté : 12 févr. 2016, 10:47
par sigebert
désolé ca me répond erreur 404 non trouvé
j'ai installé wampserver il a reconnu mon navigateur firefox, j'ai crée un repertoire siteweb dans www puis j'ai ajouté mon site ainsi que le fichier modif_traduction.php
quand je me rend dans firefox et que j'entre
http://localhost/siteweb/modif_traduction.php
j'ai erreur 404